我正在學習如何使用異步路由的Ember承諾,並在這裏磕磕絆絆。如果我寫我的路線,像這樣:返回承諾異步EmberJS路由的字典
App.ActivitiesRoute = Ember.Route.extend({
model: function() {
return getClient().getActivities()
}
});
凡getActivities()
返回Ember.RSVP.Promise
型,我可以在模板中使用:
{{#each activity in model}}
然而,我寧可不要的我的整個基礎模型生存單一屬性。當我試試這個:
App.ActivitiesRoute = Ember.Route.extend({
model: function() {
return {
activities: getClient().getActivities()
}
}
});
而改變我的模板:
{{#each activity in model.activities}}
我收到一條錯誤消息:
"Uncaught Error: Assertion Failed: The value that #each loops over must be an Array. You passed {_id: 82, _label: undefined, _state: undefined, _result: undefined, _subscribers: }"
而且我不知道如何返回名爲Promise的集合可以在我的模板中單獨訪問。
感謝 - 哈希函數正是我所期待的。 –