2012-09-26 23 views
5

Tengo una aplicación Ember razonablemente grande ("MyApp"). Lo escribí como una página independiente controlada por una brasa, pero ahora quiero instanciar N-instancias de la aplicación alojada dentro de una página existente (que no es de color ámbar).¿Cómo debería estructurar varias instancias de la misma subclase de Ember.Application en la misma página?

Ember docs on Ember.Application sugieren que la aplicación debe ser tanto el espacio de nombres de clase como la raíz de una instancia singleton, pero en este caso, necesito un espacio de nombres de clase y varias instancias. No quiero cargar las clases por instancia por separado, en realidad son bastante grandes y las aplicaciones móviles son un caso de uso importante.

Actualmente tengo:

MyApp = Ember.Application.create({ /* app state */); // namespace & instance 
MyApp.SomeSupportingClass1 = ... 

Mi impulso es hacer:

MyApp = Ember.Object.create(); // namespace 
MyApp.MyApp = Ember.Application.extend({ /* app state */ }); // instance class 
MyApp.myAppInstances = Ember.ArrayController.create(); // instances of MyApp.MyApp 
MyApp.SomeSupportingClass1 = ... 
Will

esta causa problemas? ¿Hay alguna forma más de 'asma' para estructurar esto?

+1

me preguntaba la misma pregunta y encontré esto: http://stackoverflow.com/questions/10271546/how-to-extend-namespaces-with-emberjs – GriffonRL

Respuesta

2

Actualmente, creo que su única opción es "Ember Islands".

Sin embargo, Godfrey, la más reciente adición a Tilde, inc (donde trabajan Tom y Yehuda), ha estado trabajando en FastBoot que incluirá "Application Instances". Una vez que el trabajo de Godfrey aterrice en Ember, tendrás una manera oficial de lograrlo.

Actualización:. También vale la pena echar un vistazo a los motores [Ember] como una forma de llevar múltiples aplicaciones juntos (http://ember-engines.com/)

Cuestiones relacionadas