@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;
  • Вопрос задан
  • 33 просмотра
Решения вопроса 1
Alexandroppolus
@Alexandroppolus
кодир
Просто запихни этот роут внутрь Switch
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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