我尝试使用EmberJS显示从服务器加载的所有数据。 我有模型"节点"
import DS from 'ember-data';
export default DS.Model.extend({
id: DS.attr(),
nodeName: DS.attr(),
address: DS.attr(),
listeningPort: DS.attr(),
approved: DS.attr()
});
适配器
import JSONAPIAdapter from 'ember-data/adapters/json-api';
export default JSONAPIAdapter.extend({
namespace: 'api/v1'
});
我也有索引路线
import Ember from 'ember';
export default Ember.Route.extend({
model(){
return this.store.findAll('node');
}
});
当打开索引表时,会向http://localhost:8080/api/v1/nodes发送一个返回JSON
的请求{
"nodes": [
{
"address": "127.0.0.1",
"approved": true,
"id": 24,
"listeningPort": 54879,
"nodeName": "Узел оборудования"
}
]
}
解析此JSON时出现错误
vendor-c5c8d3d ... .js:11处理路由时出错:index无法读取属性'键入'未定义的TypeError:无法读取属性' type'未定义的
答案 0 :(得分:0)
您的回复并非符合json-api标准。有关详细信息,请参阅json-api。
基本上,你需要你的回答看起来像这样:
{
"data": [{
"type": "nodes",
"id": "1",
"attributes": {
"node-name": "head",
"address": 42,
"listening-port": 11117,
"approved": true
}
}]
}