Non è possibile associare più applicazioni Ember allo stesso elemento DOM, poiché sarà in conflitto con la manutenzione DOM.
È tuttavia possibile installare più applicazioni Ember nella stessa pagina. Provare qualcosa di simile:
App1 = Ember.Application.create({
rootElement: '#app1'
});
App1.ApplicationController = Ember.Controller.extend();
App1.ApplicationView = Ember.View.extend({
templateName: 'app1-view'
})
App1.Router = Ember.Router.extend({
root: Ember.Route.extend({
index: Ember.Route.extend({
path: '/'
})
})
});
App2 = Ember.Application.create({
rootElement: '#app2'
});
App2.ApplicationController = Ember.Controller.extend();
App2.ApplicationView = Ember.View.extend({
templateName: 'app2-view'
})
App2.Router = Ember.Router.extend({
root: Ember.Route.extend({
index: Ember.Route.extend({
path: '/'
})
})
});
Qui, abbiamo impostato in modo esplicito l'elemento DOM a cui l'applicazione si legherà, utilizzando rootElement
proprietà.
Per impostazione predefinita, un Ember app si lega al body
, quindi se avete due volte, sono in conflitto ...
Esempio @http://jsfiddle.net/MikeAski/FMV8u/13/
fonte
2012-07-20 05:32:25
si può mostrare un po 'di codice? – Rajat
Look correlati a http://stackoverflow.com/questions/8509076/ember-js-widgets – iX3
In base a questa richiesta di pull, "Significa che stai creando più Ember.Applications senza specificare rootElements.The predefinito rootElement è body." https://github.com/emberjs/ember.js/issues/1192 – iX3