我开始使用1.0预发布版本的Ember.js,并遇到了一个难题。
在我的HTML中,我有这个:
<script type="text/x-handlebars" data-template-name="application">
{{outlet}}
</script>
<script type="text/javascript">
$(function() {
console.log("starting Ember app");
App.initialize();
});
</script>
<div id="footer">
... footer html ...
</div>
</body>
除了将视图放在{{outlet}}之外,所有这些似乎工作得很好,而不是将其附加到关闭的body标记之前,以便它显示在页脚下方。
这是我正在使用的路由器:
App.Router = Ember.Router.extend({
root: Ember.Route.extend({
index: Ember.Route.extend({
route: '/',
redirectsTo: 'portfolios'
}),
portfolios: Ember.Route.extend({
route: '/portfolios',
connectOutlets: function(router) {
router.get('applicationController').connectOutlet('portfolios', App.Portfolio.find());
}
})
})
});
我做错了什么?
答案 0 :(得分:13)
非常感谢上面的所有评论 - 我在他们的帮助下找到了它 -
在我的应用程序对象上,我需要指定一个rootElement ala:
App = Ember.Application.create({
rootElement: '#app',
...
然后在HTML中添加div以将模板与插座附加到:
<div id="app"></div>