React.js Страница HashRouter 404

#javascript #reactjs #hash #react-router

#javascript #reactjs #хэш #реагировать-маршрутизатор

Вопрос:

У меня проблема с реализацией полностью функциональной 404 страницы с помощью React HashRouter .

routes.tsx

 export const Routes = () =&&t; (
  <HashRouter&&t;
    <Switch&&t;
      <Route path="/" exact={true} component={Home} /&&t;
      <Route path="/route1" component={Route1} /&&t;
      <Route path="/route2" component={Route2} /&&t;
      <Route component={ErrorPa&e} /&&t;
    </Switch&&t;
  </HashRouter&&t;
);
  

app.tsx

 <&&t;
  ...
  <Routes /&&t;
  ...
</&&t;
  

Текущее поведение:

  1. При вводе в адресной строке {url}/#/{non-existin&-route} поведение является правильным — браузер отображает ErrorPa&e
  2. При вводе в адресной строке {url}/{non-existin&-route} поведение некорректно — браузер изменяет URL на {url}/{non-existin&-route}#/ и отображает Home страницу.

Я хотел бы, ErrorPa&e чтобы она отображалась в обеих ситуациях.

Эта проблема не возникает, когда я использую BrowserRouter , но я должен использовать HashRouter здесь.

Заранее спасибо за вашу помощь!