【发布时间】:2016-01-13 08:26:15
【问题描述】:
我有一个 Ember Route 类定义如下;
export default Ember.Route.extend({
model: function() {
var compObj = {};
compObj.gridPara = this.get('gridPara');
return compObj;
},
gridPara: function() {
var self = this;
var returnObj = {};
returnObj.url = '/myService';
// setting some other returnObj attributes
var summaryObj = {
total: {
label: "Total 1",
value: "100"
},
additional: [{
label: 'Label 2',
value: 'val2'
}, {
label: 'Label 3',
value: 'val3'
}]
};
returnObj.summary = summaryObj;
return returnObj;
},
actions: {
dataLoaded: function(resp) {
// Here I get the service response and want to set (or overwrite) the summaryObj values
this.get('gridParams').summary.total.value = resp.numRows;
}
}
});
我的模板看起来像
{{my-grid params=this.gridPara dataLoaded="dataLoaded"}}
现在我想在 returnObj 上设置“摘要” 我已经验证我在 dataLoaded 回调中得到了“resp”。
但我在尝试这样做时收到以下错误
this.get('gridParams').summary.total.value = resp.numRows;
未捕获的错误:断言失败:您必须使用 Ember.set() 将([object Object] 的)value 属性设置为 100。
另外,我如何在 summaryObj 中设置/推送“附加”数组
【问题讨论】:
标签: javascript jquery ember.js