我試圖加載一些數據,但我得到這個錯誤:錯誤與灰燼本地存儲適配器加載數據
Uncaught Error: Attempted to handle event `loadedData` on <App.Person:ember295:1q697> while in state rootState.loaded.created.inFlight. Called with undefined
裝載發生這樣的:
App.then(function(){
App.mystuff = ['Nina', 'Paul', 'Zoe'];
App.mystuff.forEach(function(item){
console.log("this is the item:");
console.log(item)
var p = App.Person.createRecord({name: item})
p.save(); // just save on LS Adapter
});
console.log("Were they added?");
console.log(App.Person.find());
});
你可以在this JSbin中看到該應用程序。你知道如何解決它嗎?
基本上我想知道如何讓App.Person.find()
在控制檯和代碼中工作。到目前爲止,我沒有收到任何結果。
「當正在保存數據時,」ember試圖訪問App.Person.find()中的數據「......這是因爲ember是異步的,對吧?在開始時擺脫保存是不可避免的,因爲我實際上是從數據庫中檢索數據,然後每次都在本地保存數據。那麼我應該怎麼做才能擺脫錯誤? –
訣竅是不保存在轉換中。就你而言,它看起來像是在試圖保存測試數據,所以在生產環境中,這不會發生。這就是爲什麼我建議使用燈具,因爲它會繞過你的問題。不幸的是,Ember-data在飛行中(現在)不允許對模型進行任何改變,因此我無法知道這一點。 – Gevious