在没有重定向函数的情况下向一条路径发送多条路径
-
21-12-2019 - |
题
我正在使用Iron-Router将我的网站更新到Meteor应用程序,并需要更改我的URL。旧方案具有如此之类的资本化页面名称:
mysite.com/Contact
.
但我改变了一切都是小写的:
mysite.com/contact
.
接触路由并不复杂,因此它设置如下:
this.route('contact');
.
但我希望将要重定向的/Contact
URL。我知道我可以这样做:
this.route('Contact', {
onBeforeAction: function() {
Router.go('contact');
}
});
.
但它太混乱了。我宁愿这样做:
this.route('contact', {
path: ['/contact', '/Contact']
});
.
其中路线只映射到多条路径。
是这样的功能吗?或者是我的onBeforeAction
最好的我要得到?
解决方案
https://github.com/EventedMind / Iron-Router / Blob / devel / docs.md#动态路径段
可以使用路径段的正则表达式(请参阅动态路径段链接中的最后一个示例)。
您的路径将是:
this.route('contact', {
path: /contact/i
});
.
前向斜杠后的'i'是正常表达修饰符,以便不区分大小写,允许您接受“联系人”的任何变体(无论是联系人,联系人还是联系人)。
看 http://www.w3schools.com/jsref/jsref_regexp_i.asp 有关正则表达式修改器的详细信息。
不隶属于 StackOverflow