【发布时间】:2015-11-23 23:59:51
【问题描述】:
我在模板中显示模型数据时遇到问题。这是我的代码:
- /routes/index.js
import Ember from 'ember';
export default Ember.Route.extend({
model() {
return this.store.find('video');
}
});
- /adapters/application.js
import DS from 'ember-data';
export default DS.JSONAPIAdapter.extend({
defaultSerializer: 'JSONSerializer'
});
- /serializers/application.js
import DS from 'ember-data';
export default DS.JSONSerializer.extend({});
- /templates/index.hbs
{{#each video in model}}
<p>{{video.title}}</p>
{{/each}}
但是没有显示数据。我检查了来自服务器的响应,它是有效的 jsonapi.org 格式响应。我通过从/router/index.js:model() 返回一个Ember.Object 进行了测试,并且数据呈现得很好。我很困惑为什么当我指定使用 JSONSerializer 时,ember 无法从存储中访问数据,但是当数据作为对象数组返回时呈现。有什么想法吗?
更新
如果我在模板中记录{{log model}},我会得到以下输出:
Class {store: Class, isLoaded: true, manager: Class, isUpdating: false, __ember1448322947671: null…}
【问题讨论】:
-
控制台有错误吗?
-
@torazaburo 完全没有错误。
-
Ember 版本?你可以试试
this.store.query吗? -
@torazaburo 我刚刚解决了这个问题,正在发布答案。问题是我使用了
JSONSerializer而不是JSONAPISerializer
标签: javascript node.js ember.js ember-data ember-cli