@GaserV

Почему не матчится nested route?

Такая проблема. Есть два роута например: "/movies" & "/movies/:id". Если переходить ко второму роуту с первого(с помощью Link) то все работает норм. Но если вбить УРЛ напрямую, например /movies/1 - то у меня в консоли ошибка что not found. Также касается если роут например "/movies/search" то /movies открывается а /movies/search нет. Из-за чего так получается?

Routes:
const routes = [
  {
    path: "/",
    component: () => <Link to="/movies/1">View card</Link>, //для примера тут хардкод
    exact: true
  },
  {
    path:"/movies",
    component: MoviesList,
    exact: true
  },
  {
    path: "/movies/:id",
    component: MovieView,
    exact: true
  }
];


Рендер роутов:
class PageWrap extends React.Component {
  renderRoutes = () =>
    routes.map(route => <Route key={route} {...route} exact />);

  render() {
    return (
      <Router>
        <Switch>{this.renderRoutes()}</Switch>
      </Router>
    );
  }
}
  • Вопрос задан
  • 89 просмотров
Решения вопроса 1
@GaserV Автор вопроса
Вообщем решил вопрос. В output нужно было добавить publicPath: "/".
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
miraage
@miraage
Старый прогер
https://webpack.js.org/configuration/dev-server/#d...

Добавьте в конфиг
devServer: {
    historyApiFallback: true
  }
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы