Задать вопрос
@bzotsss

Почему всегда рендериться компонент даже если path = «*», react-router-dom?

Всем привет , хотел бы узнать почему всегда рендериться реакт компонент , хотя в патче указан путь * , тобеж url линки на который не существует . И как мне сделать ре-рендер на не существующие url ? "react-router-dom": "^5.3.0"
Вот код :
import s from "./App.module.css";
import routesConfig from "../../routes/routesConfig";
import { NavLink, Route, BrowserRouter, Switch } from "react-router-dom";
import Header from "@components/Header/Header";
import PersonPage from "../PersonPage/PersonPage";
import NotFoundPage from "../NotFoundPage/NotFoundPage";

const App = () => {
  return (
    <div className={s.wrapper}>
      <BrowserRouter>
        <Route component={Header} />
        <Switch>
          {routesConfig.map((route) => { // тут у нас массив с инофой для роутеров
            return (
              <Route
                path={route.path}
                exact={route.exact} // exact означает точное совпадение
                component={route.component}
              />
            );
          })}
        </Switch>
        <Route path="*" exact component={NotFoundPage} />
      </BrowserRouter>
    </div>
  );
};

export default App;
  • Вопрос задан
  • 38 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Frontend-разработка на React
    10 недель
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Академия Eduson
    React-разработчик
    2 месяца
    Далее
Решения вопроса 1
Alexandroppolus
@Alexandroppolus
кодир
Просто запихни этот роут внутрь Switch
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
ITK academy Екатеринбург
от 50 000 до 90 000 ₽