Ember.js 来自的计算属性有许多返回的未定义成员
我有一个Ember.js 来自的计算属性有许多返回的未定义成员,ember.js,Ember.js,我有一个feed对象,该对象有许多feedTrack,每个feedTrack都有一个与其关联的track 这些关系可以成功地工作,但当我尝试使用计算属性时,有些东西会中断 关于提要模型,我有: secondFeedTrack: computed('feedTracks.[]', function() { return this.get('feedTracks').then((feedTracks) => { return feedTracks.objectAt(1); })
feed
对象,该对象有许多feedTrack
,每个feedTrack
都有一个与其关联的track
这些关系可以成功地工作,但当我尝试使用计算属性时,有些东西会中断
关于提要模型,我有:
secondFeedTrack: computed('feedTracks.[]', function() {
return this.get('feedTracks').then((feedTracks) => {
return feedTracks.objectAt(1);
});
})
当我执行{{log feed.secondFeedTrack}}
时,我得到:
Object { _id: 136, _label: undefined, _state: undefined, _result: undefined, _subscribers: Array[0] }
这不算什么,但看起来不对劲
当我执行{{log feed.secondFeedTrack.track}}
时,我得到未定义的
如果我没有从computed属性中正确获取feedTrack
,那我做错了什么?问题是,Ember数据返回PromiseObject和PromiseArray作为存储方法,但因为您是。然后
将承诺(async hasMany)转换为常规承诺
如果您将其简化为:
secondFeedTrack: computed('feedTracks.[]', function() {
return this.get('feedTracks').objectAt(1);
});
})
它应该可以工作,因为它应该随着关系的解决而更新