Визуализация компонента на определенных маршрутах - путь Regex - PullRequest
0 голосов
/ 04 июля 2018

Я пытаюсь отобразить компонент (заголовок) только в нескольких конкретных путях, но не в их дочерних элементах, т.е. /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}
    />

Но в онлайн-движке регулярных выражений он совпадает:

enter image description here

1 Ответ

0 голосов
/ 05 июля 2018

Это сработало:

    <Route
      render={props => paths.some(e => props.location.pathname.endsWith(e)) ? this.makeMyComponent() : null}
    />
...