2015-10-06 6 views
5

In Ember 2+, weiß jemand, wie man einen Verweis auf den Ember Store erhält, um das Modell-Mapping in der JavaScript-Konsole zu beheben?Zugriff auf den Ember Data Store über die Konsole?

Es war möglich durch App.__container__.lookup in Ember 1, aber das existiert nicht mehr, und es ist verdammt schwer, eine Dokumentation zu diesem Thema zu finden.

Dank

+0

Könnten Sie nicht einfach den Ember Inspector benutzen? – nem035

+0

Nun, es ist nur gut für "normal" geladene Entitäten. Ich habe ein Modell, das nicht korrekt lädt (viele Nullfelder), ich vermute ein Mapping-Problem, aber keine sichtbaren Fehler in der Konsole, also wollte ich manuell eine Laden laden. –

Antwort

11

Wenn Sie in Ihrem package.json aussehen, sollten Sie eine ember-export-application-global Paket sehen, die standardmäßig (es, wenn nicht, installieren) installiert ist. Dadurch wird Ihre Anwendung nicht in das globale Objekt App exportiert, sondern in ein globales Objekt, das nach Ihrer App benannt ist. Sie könnten also window.TodoList oder window.ShoppingCart anstelle von window.App haben. Von dort können Sie diese Zeile (ähnlich Ember 1.xx) verwenden:

AppName.__container__.lookup('service:store') 

Sie können auch tun, was ich tun und eine instance initializer dafür erstellen:

export default { 
    name: 'store-on-app', 
    after: 'ember-data', 
    initialize(instance) { 
     const application = instance.container.lookup('application:main'); 
     const store = instance.container.lookup('service:store'); 
     application.set('store', store); 
    } 
} 

Dann können Sie einfach Benutzer AppName.store .

+0

Es ist perfekt. musste das Paket installieren, da es sich um eine migrierte alte Glut-App handelt. Ich danke dir sehr! –

Verwandte Themen