React Router 4.0.0 带有Regex来验证查询字符串参数。但是,它似乎与 ES6 模板文字不兼容。
这是一个非常简单的例子:
<BrowserRouter>
<Switch>
<Route Route path={routeConstant} component={MyComponent} />
</Switch>
</BrowserRouter>
如果您尝试使用以下值,您会看到前 2 个常量有效,但第三个无效。
const root = 'folder'
const routeConstant1 = '/folder/:id(\d+)' // <= /folder/21 matches
const routeConstant2 = `/${root}/:id` // <= /folder/21 matches
const routeConstant3 = `/${root}/:id(\d+)` // <= /folder/21 does not match
可能有一个很好的解释(总是有),但我真的很感激一些指示,因为这感觉有点混乱。提前致谢。