我试图仅在多个特定路径中渲染组件(标题),而不在其子级(即/foo
中渲染,而不是在/foo/bar
中渲染)。
说我有一系列路径:
let paths = ['/foo', '/bar', '/baz']
我试图这样做,但是没有用:
const x = paths.map(e => `(${path}${e}/?$)`)
<Route
path={x.join('|')}
component={this.makeMyComponent}
/>
这也不起作用:
const x = paths.map(e => `(${e}/?$)`)
<Route
path={`${path}(/foo$|/bar$|/baz$})}
component={this.makeMyComponent}
/>
但是它确实与在线正则表达式引擎匹配:
答案 0 :(得分:0)
这有效:
<Route
render={props => paths.some(e => props.location.pathname.endsWith(e)) ? this.makeMyComponent() : null}
/>