簡體   English   中英

vue-router path-to-regexp與可選的路由路徑參數組不匹配

[英]vue-router path-to-regexp does not match optional route path parameter group

介紹

我正在使用vue.js的官方vue-router

我目前正在嘗試使用動態路由匹配來獲取要匹配的路由 由於VUE-路由器使用路徑到的regexp引擎蓋下,可以如所描述的在一個路由路徑中使用的正則表達式這里 您可以在此處使用此功能找到vue-router的示例。

問題

這是我的路線:

{
    path: '/a/:id/(r/:generic1/)?s/:name/a'
}

這里有一些可行的例子:

'/a/1234/s/Foo/a' // => {0: undefined, id: "1234", name: "Foo"}
'/a/23456/s/Bar/a' // => {0: undefined, id: "23456", name: "Bar"}

這里有一些例子不起作用,但是應該:

'/a/1234/r/Bar/s/Foo/a' // => {id: "1234", generic1: "Bar", name: "Foo"}
'/a/23456/r/Baz/s/Goo/a' // => {id: "1234", generic1: "Baz", name: "Goo"}

..我在這里錯了嗎? 示例之一說明以下內容:

通過使用括號括起來,使路徑的一部分成為可選內容,並添加“?” [原文如此]

我認為這些路徑應與給定的路線匹配。

根據此評論 ,您不能在regexp區域內放置參數。

我認為您可以執行類似/a/:id/r?/:generic1?/s/:name/a這應該與您的所有示例匹配,並且還保留了generic1參數。

我使用Express Route Tester驗證了此解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM