我是EmberJS的新手,一周前开始学习。好吧,我有一些名为 contactsTemplate.html 的.html文件,这是我想要使用的模板。如下所示:
<script type="text/x-handlebars" data-template-name="contacts">
<h2>My Contact List</h2>
{{#each contact in contactList}}
{{contact.name}}
{{/each}}
</script>
大。我有一个包含{{outlet}}
表达式的 index.html 文件。这意味着每个新内容都会被加载到这个空间中,对吗?
<script type="text/x-handlebars" data-template-name="application">
<h1>My Application</h1>
{{outlet}}
</script>
好的...为了管理这个名为application的模板,我创建了一个Controller对象。
App.ApplicationController = Ember.ObjectController.extend({
...
});
与联系人模板相同:
App.ContactsController = Ember.Controller.extend({
contactList: []
});
我创建了两条路由来管理页面之间的转换:
App.Router.map(function() {
this.route("index", "/");
this.route("contacts", "/contacts");
});
我怀疑是:
对于长篇文章感到抱歉,感谢您的帮助!
答案 0 :(得分:0)
默认情况下,路由器地图中每个声明的this.route(routeName)
都会有一个[routeName]Controller
,[routeName]Route
,并期望[routeName]
模板,遵循{{3}中描述的这些约定}。
要从一个路线更改为其他路线,您可以使用:
this.transitionToRoute(routeName)
this.transitionTo(routeName)
您可以在路线指南http://emberjs.com/guides/concepts/naming-conventions/
中找到更多信息我希望它有所帮助