我是 ember 框架的新手,在访问 ember 数据时遇到问题或疑问。我将 ember-cli 和 ember-cli-mirage 用于演示目的。
配置.js
export default function() {
this.get('/newcontracts', function(db, request) {
return {
data:[{
"type": "newcontracts",
"id": 1,
"attributes": {
"department-type": ["Legal", "Sales"],
"agreement-type": ["Service Agreement", "Purchase"],
"renewal-type": ["One time", "None"]
}
}]
}
});
灰烬商店
export default Model.extend({
"type": "",
"department-type": attr(""),
"agreement-type": attr(""),
"renewal-type": attr("")
});
路由器
export default Ember.Route.extend({
model: function(){
console.log(this.get('store').findAll('newcontract')) // outputs ember class
return this.get('store').findAll('newcontract');
});
控制器
export default Ember.Controller.extend({
details: Ember.computed('model', function() {
return this.store.peekRecord('new-contract', 1) // --> outputs ember class
//console.log(this.store.peekRecord('new-contract', 1).get('department-type)) ---> desired output(array)
})
departmentDetails: Ember.computed('model', function() {
this.details.get('department-type') ; ///error
})
});
模板
{{log "model" details}} --> ember class
{{log "model" model}} --> ember class
{{log "model" model.department-type}} --> undefined
我不能像那样访问部门详细信息吗?如果我使用 details 属性中的注释行,我会得到所需的数据。我应该从商店中单独获取每个数据吗?此外,在模型中记录值会给出一个 Ember 类。
即使在模板文件中,我也无法获取 model.department-type 等的值。
我在 Ember chrome 检查器中正确获取了数据。仅供参考,我使用的是 ember 2.5.1。请帮助我。