所以我有一个hasMany定义为
任务:DS.hasMany('quest')
我有一个应该完成每个任务并确定总数的属性。
该函数看起来像这样,
questXP: function() {
var amount = 0;
this.get('quests').forEach(function(item)
{
console.log(item.get('xpReward'));
amount += parseInt(item.get('xpReward'));
});
return amount;
}.property('quests'),
我已经尝试为hasMany添加async:true,但是它完全停止了forEach的工作。目前,它循环了3次(我有3个任务),但它无法访问该任务的任何属性。
我的想法是与任务仍在加载有关。
关于我在做什么错的任何想法吗?
最佳答案
您的计算属性取决于每个xpReward
属性。您是否需要使用[email protected]
而不是quests
。
questXP: function() {
var amount = 0;
this.get('quests').forEach(function(item)
{
console.log(item.get('xpReward'));
amount += parseInt(item.get('xpReward'));
});
return amount;
}.property('[email protected]'),