Dopo aver aggiornato il mio app di Ember 1.12.0, ho notato un sacco di avvertimenti come questo:Utilizzando istanza Inizializzatori con Ember 1.12.0 e l'Ember CLI
lookup
fu chiamato in Registro di sistema. L'APIinitializer
non riceve più un contenitore e dovresti utilizzare unoinstanceInitializer
per cercare oggetti dal contenitore. Vedi http://emberjs.com/guides/deprecations#toc_deprecate-access-to-instances-in-initializers per maggiori dettagli.
Questo sembra essere causato dall'utilizzo di container.lookup
da un inizializzatore, che andava bene nelle versioni precedenti di Ember.
Dal post del blog su Ember 1.12.0, sembra che in un'applicazione basata su Ember globale, la differenza tra fare un inizializzatore e un Initializer istanza sta usando
App.initializer({
...
});
vs
App.instanceInitializer({
...
});
Tuttavia, non sembra descrivere come utilizzare gli inizializzatori di istanza con la CLI di Ember. Qualcuno sa come usarli?
MODIFICA: Risulta un plug-in del browser di tutte le cose che bloccava le informazioni di cui avevo bisogno sul post originale del blog. Lascio questo qui nel caso in cui è utile a nessuno, ma nel CLI inizializzatori regolari andare all'interno
app/initializers/__my__initializer.js
mentre istanza Inizializzatori sono definiti come
app/instance-initializers/__my__initializer.js
EDIT 2: Se qualcuno è in arrivo qui perché stanno vivendo lo stesso problema, this issue on the Ember.js repo fa riferimento a questo problema e include un collegamento a un jsfiddle che dimostra il problema.
grazie amico, ho pensato che fosse ovvio per usa app/instance-initializers/__ my__initializer.js dopo aver seguito la convenzione di denominazione di ember-cli. è stato bello averlo confermato! A parte la comunità dello stack è severo nel fornire risposte come domande. La parte di modifica che hai menzionato, gentilmente aggiungila come anwer. – wallop
Grazie per il suggerimento! – alexlafroscia