2016-02-10 11 views
0

我試圖更新一個燼1.7應用程序。在setupController(路線在setupController中嵌入model.get('elements.content.content')?

this.controllerFor('editor/object-list').set('model', model.get('elements.content.content'));

的)被調用,並element.content.content似乎返回的車型陣列。在1.10中它返回undefined。

elements and elements.content return <DS.PromiseManyArray:ember748> and <DS.ManyArray:ember749>,但1.10中的elements.content沒有內容屬性。在1.7它確實。相反,1.10具有canonicalState/currentState屬性,這些屬性似乎包含所需的數據。我不明白爲什麼甚至這樣做。有人有想法嗎?

+0

什麼灰燼數據版本? – locks

+0

1.7.0版本中的1.0.0-beta.10和1.10版本中的1.0.0-beta.15 – Kana

+0

在Ember Data 1.0.0-beta.14發佈文章http://emberjs.com/blog/2014 /12/25/ember-data-1-0-beta-14-released.html下面的評論之一提到了對「內容」的改變。你能給我們提供更多關於什麼元素的信息嗎? '.set('model',model.get('elements'))'工作嗎? – Knightsy

回答

0

似乎elements是一個異步的關係,所以你應該解決的承諾:

model.get('elements').then(m => this.controllerFor('editor/object-list').set('model',m)); 
0

在afterModel返回一個承諾爲我工作:

afterModel: function(sheet) { 
    var elements = sheet.get('elements'); 
    var images = elements.map(function(e){ return e.get('image'); }); 

    return Ember.RSVP.all(images); 
},