在我的ember应用程序(1.0.0生产版)中,我有一个URL结构如下:
/item
/item/{specific-item-name-defined-in-routes}
Run Code Online (Sandbox Code Playgroud)
路由器映射看起来有点像这样:
App.Router.map(function () {
this.resource("item", function () {
this.resource("my-first-item");
this.resource("another-item");
...
});
});
Run Code Online (Sandbox Code Playgroud)
如果用户导航到/item我想要显示特定帖子(例如/item/my-first-item).我可以通过使用redirect路由的方法来做到这一点:
App.ItemRoute = Ember.Route.extend({
redirect: function () {
this.transitionTo('my-first-item');
}
});
Run Code Online (Sandbox Code Playgroud)
不幸的是,如果我手动输入地址栏中的URL /item/another-item或直接导航到/item/another-item应用程序重定向我,请使用此方法/item/my-first-item.如果我只是在嵌套路由之间进行更改(即通过单击应用程序中的链接,它会正确加载).
只有在没有提供嵌套路由时,如何才能使重定向工作?
Mik*_*tti 10
而不是重定向项路由,将重定向挂钩添加到(自动生成的)ItemIndexRoute:
App.ItemIndexRoute = Ember.Route.extend({
redirect: function () {
this.transitionTo('my-first-item');
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1050 次 |
| 最近记录: |