2012-09-07 2 views
9

Sto provando a passare l'applicazione Ember a utilizzare Ember.Router, ma sto avendo un problema con il punto in cui il modello dell'applicazione viene aggiunto. Quando chiamo App.initialize() esegue il rendering del modello alla fine del documento. C'è un modo per specificare dove viene accodato il modello dell'applicazione renderizzato?Come posso controllare dove Ember.js aggiunge il modello dell'applicazione renderizzato?

La mia applicazione è un'applicazione per i binari e sto cercando di incorporare un'applicazione Ember in una delle mie pagine. Non voglio cambiare il modo in cui la mia attuale intestazione e piè di pagina viene renderizzata così idealmente sarei in grado di specificare dove ember rende il template.

Ecco un esempio di jsfiddle. Si può vedere che rende:

 
Header Content 
Footer Content 
Test 1 
Test 2 
Test 3 

Quello che sto cercando per è:

 
Header Content 
Test 1 
Test 2 
Test 3 
Footer Content 

risposta

13

Impostare la proprietà rootElement del Ember.Application: http://jsfiddle.net/vAxkL/3/

Doc: http://docs.emberjs.com/symbols/Ember.Application.html

EDIT - Corretto il violino ancorando alla versione 1.0.pre: http://jsfiddle.net/vAxkL/11/

+0

Fantastico, grazie mille! – rtremaine

+1

Non so perché, ma ho dovuto fare ** rootElement: '#application' ** piuttosto che ** rootElement: $ ('# application') ** – rtremaine

+0

Vale anche la pena ricordare che quando si usa un rootElement diverso dal body, ovunque si chiamare append() su una vista deve essere modificato in appendTo ('# id-of-your-root-element') o Ember fallisce in alcuni modi strani. – rtremaine