【发布时间】:2013-03-12 15:53:51
【问题描述】:
我有一个 ember 应用,其主页显示两个链接:“登录”和“请求邀请”。
每个链接都转到父 (index) 路由下的嵌套路由,渲染到 index 路由的 {{outlet}}。它是这样工作的:
-
/:将index渲染到应用程序出口 -
/sign_in:渲染索引内容,然后将index/sign_in渲染到索引模板的出口 -
/request_invite:渲染索引内容,然后将index/request_invite渲染到索引模板的出口
这很好用,但我想做的是默认将“登录”模板呈现到index 插座中。所以上面的第一个子弹会变成这样:
-
/:将index渲染到{{outlet}}并且将index/sign_in渲染到索引模板的出口
模板
<script type="text/x-handlebars" data-template-name="application">
<h1>application</h1>
{{#linkTo "index"}}index{{/linkTo}}
{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name='index'>
<h2>index</h2>
{{#linkTo "index.sign_in"}}Sign in{{/linkTo}}
|
{{#linkTo "index.request_invite"}}Request Invite{{/linkTo}}
{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name='index/sign_in'>
<h3>index/sign_in</h3>
</script>
<script type="text/x-handlebars" data-template-name='index/request_invite'>
<h3>index/request_invite</h3>
</script>
路线
App = Ember.Application.create();
App.Router.map(function() {
this.resource("index", function() {
this.route("sign_in");
this.route("request_invite");
});
});
首次加载时,它不会显示index/sign_in 或index/request_invite 模板。我会默认显示 index/sign_in 模板。
【问题讨论】:
标签: javascript ember.js url-routing ember-router