Vue 路由器别名优先级
Vue router alias priority
我在路由文件中设置了两条路由,如下所示:
{
path: '/:language?/chain/:entity/',
alias: '/:language?/:entity/',
name: 'search',
component: Search
}
因为 path
路由比别名更具体,我把它作为我的主要 path
。
这适用于:
/de/chain/mcdonalds/
但是对于这样的事情它不起作用:
/de/mcdonalds/
因为我的主要路径是 /:language?/chain/:entity/
,所以它仍然会插入 chain
到我所有的 router-link
组件中。即使它不匹配确切的词。
我希望这条路线在匹配时优先。如果我交换它们,我将扭转我的整个情况。
我怎样才能让这两条路线正常工作?
遗憾的是,在 vue-router
支持 动态别名 之前,无法使用此功能。
您可能需要同时执行此操作
{
path: '/:language?/chain/:entity/',
name: 'search',
component: Search
},
{
path: '/:language?/:entity/',
name: 'search',
component: Search
}
这是功能请求的 Github link:https://github.com/vuejs/vue-router/issues/1858
我在路由文件中设置了两条路由,如下所示:
{
path: '/:language?/chain/:entity/',
alias: '/:language?/:entity/',
name: 'search',
component: Search
}
因为 path
路由比别名更具体,我把它作为我的主要 path
。
这适用于:
/de/chain/mcdonalds/
但是对于这样的事情它不起作用:
/de/mcdonalds/
因为我的主要路径是 /:language?/chain/:entity/
,所以它仍然会插入 chain
到我所有的 router-link
组件中。即使它不匹配确切的词。
我希望这条路线在匹配时优先。如果我交换它们,我将扭转我的整个情况。
我怎样才能让这两条路线正常工作?
遗憾的是,在 vue-router
支持 动态别名 之前,无法使用此功能。
您可能需要同时执行此操作
{
path: '/:language?/chain/:entity/',
name: 'search',
component: Search
},
{
path: '/:language?/:entity/',
name: 'search',
component: Search
}
这是功能请求的 Github link:https://github.com/vuejs/vue-router/issues/1858