我一直在指导和网上的一些问题。这必须很简单,但我只是错过了一些东西。最糟糕的是,其他的东西效果很好但不是真正微不足道的东西(imho)。
我已经设置了基本的Ember应用程序。我定义了一个索引模板作为登录页面。有一些元素,我希望它从一个'模型'直接引用,我在脚本中只有一个javascript对象。
var company = {
id: '1',
name: 'Some Inc.',
email: 'guy@some-inc.com'
};
App.IndexRoute = Ember.Route.extend({
setupController: function(controller, company) {
// Set the IndexController's `title`
controller.set('title', "Publisher Dashboard");
controller.set('model', company);
}
});
在我的HTML中,我有索引模板:
<script type="text/x-handlebars" data-template-name="index">
...
<span class="name">{{name}} ( {{email}} )</span>
我不知道版本是否有变化。我已经看到不同的语法做/声称做同样的事情。我正在使用v1.0.0。
答案 0 :(得分:0)
setupController: function(controller, company) {
this._super(controller, model);
// Set the IndexController's `title`
controller.set('title', "Publisher Dashboard");
controller.set('model', company);
}
我添加了一行,即调用super。
答案 1 :(得分:0)
您必须声明要用于IndexRoute的模型
App.IndexRoute = Ember.Route.extend({
model: function() {
return 'SOMETHING' //could be 'company'
},
setupController: function(controller, company) {
// Set the IndexController's `title`
controller.set('title', "Publisher Dashboard");
controller.set('model', company);
}
});
SetupController模型使用路径上模型挂钩返回的模型。所以如果你在模型钩子中返回'company'。您将有权访问该公司对象。