假设您有以下路线定义:
@route "home1",
path: "/:homeSlug1
和
@route "home2",
path: "/:homeSlug2
和
@route "home3",
path: "/fixedPath
然后转到浏览器中的localhost:3000/fixedPath
Iron-Router如何选择优先级?
看起来固定路径路径优先于参数化路由。这可能吗?
答案 0 :(得分:2)
每次调用IWorkBenchPage page = .....;
MyView view = page.openView(MyViewID,"myview",VIEW_ACTIVATE);
IDataProvider dp = ....;
// the following statement will set the dataprovider, the necessary layers
view.dataProvider(dp);
view.getTable().refresh();
....
时,新路由都会被推送到可能路由数组的后面。当一个请求进来时,IronRouter会遍历该数组并选择匹配的第一个数组。因此,优先顺序直接来自您指定路线的顺序。
查看source表明了这一点:
Router.route(...)
以后
Router.prototype.route = function (path, fn, opts) {
...
var route = new Route(path, fn, opts);
...
this.routes.push(route);
}
答案 1 :(得分:0)
没有优先权。将返回匹配url表达式的第一个路由。 /:参数用于定义具有动态数据上下文的单个路由,通常是db索引或唯一键。