Ember.js 如何从控制器访问模型数据以在Ember中的视图中渲染?
我目前在尝试在Handlebar模板中渲染模型中的数据时遇到问题。我可以看到数据是从API中提取的,因为它显示在Ember Chrome inspector中的数据中 我使用的是Ember v1.9.1和Ember Data 1.0.0-beta.16.1 但是,当尝试循环浏览控制器的模型数据时,页面上没有呈现任何内容。以下是我目前的代码: 型号:Ember.js 如何从控制器访问模型数据以在Ember中的视图中渲染?,ember.js,ember-data,handlebars.js,Ember.js,Ember Data,Handlebars.js,我目前在尝试在Handlebar模板中渲染模型中的数据时遇到问题。我可以看到数据是从API中提取的,因为它显示在Ember Chrome inspector中的数据中 我使用的是Ember v1.9.1和Ember Data 1.0.0-beta.16.1 但是,当尝试循环浏览控制器的模型数据时,页面上没有呈现任何内容。以下是我目前的代码: 型号: App.User = DS.Model.extend({ name: DS.attr('string'), email: DS.attr('
App.User = DS.Model.extend({
name: DS.attr('string'),
email: DS.attr('string')
});
路由器:
App.Router.reopen(
{
location: 'auto',
rootURL: '/'
});
App.Router.map(function()
{
this.resource('users', { path: '/users' });
});
路线:
App.UsersRoute = Ember.Route.extend({
model: function()
{
this.store.find('user');
}
});
模板:
users template
<ul>
{{#each user in model}}
<li>
Name: {{user.name}}
Email: {{user.email}}
</li>
{{/each}}
</ul>
用户模板
{{{#模型中的每个用户}
-
名称:{{user.Name}
电子邮件:{{user.Email}
{{/每个}}
为什么我的车把模板没有呈现页面上的数据?路线:
App.UsersRoute = Ember.Route.extend({
model: function()
{
this.store.find('user');
}
});
App.UsersRoute = Ember.Route.extend({
model: function() {
return this.store.find('user'); // <-- missing return statement
},
// default behaviour
setupController: function(controller, model) {
controller.set('model', model);
}
});
App.UsersRoute=Ember.Route.extend({
模型:函数(){
返回this.store.find('user');//另外,为什么我需要设置model属性?如果没有指定,它不是自动推断的吗?@JellyFishBoy啊,是的,这是默认行为。