2015-10-06 18 views
5

In Ember 2+, qualcuno sa come ottenere un riferimento a Ember Store per la risoluzione dei problemi relativi alla mappatura del modello nella console javascript?Come accedere a Ember Data Store dalla console?

Era possibile tramite App.__container__.lookup in Ember 1, ma questo non esiste più ed è difficile trovare documentazione su questo.

Grazie

+0

Non potresti semplicemente usare l'Inspector Ember? – nem035

+0

Bene, va bene solo per le entità "normalmente" caricate. Ho un modello che non si carica correttamente (molti campi null), sospetto un problema di mappatura ma non ho errori visibili nella console, quindi volevo attivare manualmente un carico del negozio. –

risposta

11

Se guardate nel vostro package.json, si dovrebbe vedere un pacchetto ember-export-application-global che è installato per impostazione predefinita (se non, installarlo). Questo esporterà la tua applicazione non all'oggetto globale App, ma a un oggetto globale che prende il nome dalla tua app. Quindi potresti avere window.TodoList o window.ShoppingCart invece di window.App. Da lì si può utilizzare questa linea (simile a Ember 1.xx):

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

si può anche fare quello che faccio e creare un instance initializer per esso:

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); 
    } 
} 

allora si può solo utente AppName.store .

+0

È perfetto. ha dovuto installare il pacchetto perché si tratta di una vecchia app ember migrata. Grazie mille! –