如何解决是否可以将父路由设为 404,而将子路由设为特定路由
在我的 router.js 文件中,我有如下所示的内容
import EmberRouter from '@ember/routing/router';
const Router = EmberRouter.extend({});
Router.map(function () {
this.route('index',{ path: '/' });
this.route('foo',function() {
this.route('bar',function() {
this.route('cat');
});
});
this.route('notfound',{ path: '/*path' });
});
export default Router;
问题是我希望路径 /foo/bar/cat
路由到 foo.bar.cat
路由,但我不希望路径 /foo
或 /foo/bar
路由到任何东西除了 404。在我的情况下,foo
和 bar
路由基本上没用。为了美观,我只希望 url 有 3 个级别。
解决方法
我实际上意识到避免创建 foo
和 bar
路线并为我想要的路线创建路径更有意义。
所以不要在 ember-cli 中这样做:
ember g route foo/bar/cat
我刚刚做了
ember g route cat
然后我在路由器中设置所需的路径。
Router.map(function () {
this.route('index',{ path: '/' });
this.route('cat',{ path: '/foo/bar/cat'});
this.route('notfound',{ path: '/*path' });
});
这为我提供了 foo/bar/cat
的正确路线,但是 foo
和 foo/bar
都被路由到了 notfound
路线。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。