Ember JS在添加新路线

时间:2016-01-19 12:52:15

标签: javascript templates ember.js routes ember-cli

我试图对概念进行一些证明,并学习ember js框架概念。我遇到了一个问题,就是困扰我好几个小时......这就是事情:

我使用windows命令提示符创建了一个简单的ember-cli应用程序。一切正常,默认路由被点击并且application.hbs被渲染。

之后我在模板中添加了一个blogposts.hbs,它只有静态html:



<h1>Blog posts</h1>
<div>These are the blogposts:</div>
&#13;
&#13;
&#13;

还添加了到/router.js的路由

&#13;
&#13;
Router.map(function() {
    this.route('blogposts',{path: '/blogposts'});
});

// -or-

Router.map(function() {
    this.route('blogposts');
});
&#13;
&#13;
&#13;

试过以上两点。并添加了一个链接到application.hbs,该链接应链接到blogposts路由。

&#13;
&#13;
<h2 id="title">Welcome to Ember</h2>

{{#link-to 'blogposts'}}Blogpost linkto{{/link-to}}
&#13;
&#13;
&#13;

问题:这条路线似乎永远不会受到打击。我试图导航到localhost:4200 / blogposts,尝试了生成的链接,我也尝试了哈希:#/ blogposts,但这些都没有渲染我的博客文章模板。如果我理解正确的话,如果我没有指定一个,那么ember应该为博客帖子生成默认控制器,并且也不需要模型来呈现该模板。我知道这一定是我失踪的一些小事,但我似乎无法理解我错在哪里。

非常感谢每一个帮助!

谢谢!

PS。我差点忘了,我使用以下内容: 恩伯:1.13.11 Ember数据:1.13.15 jQuery:1.11.3

1 个答案:

答案 0 :(得分:0)

好的,在我发布问题后的5分钟我得到了答案!我错过了application.hbs的{{outlet}}!

我不清楚application.hbs就像是某种布局,它总是会呈现出来。我认为基于路线,application.hbs将被博客文章取代,但它不是那样的。

使用默认路线,将首先呈现应用程序模板,并将其他模板呈现给占位符({{outlet}})。