React router No Match 404 не работает при развертывании? - PullRequest
2 голосов
/ 15 марта 2020

Я добавил страницу ошибки No Match 404 на свой веб-сайт, и она прекрасно работает, когда я go неверный путь на localhost, но после развертывания и go неверный путь, как ... / invalidpath I получить ошибку по умолчанию для страницы netlify not found Ниже мое приложение. js компонент:

import React from 'react';
import { Switch, Route } from 'react-router-dom';
import Navigation from './components/navigation/Navigation';
import Home from './pages/home/Home';
import Projects from './pages/projects/Projects';
import Contact from './pages/contact/Contact';
import NoMatch from './pages/404page/404Page';

import './App.scss';

function App() {
  return (
    <div className='app'>
      <Navigation />
      <Switch>
        <Route exact path='/' component={Home} />
        <Route path='/projects' component={Projects} />
        <Route path='/contact' component={Contact} />
        <Route path='*' component={NoMatch} />
      </Switch>
    </div>
  );
}

export default App;

1 Ответ

2 голосов
/ 15 марта 2020

Если вы создали приложение с create-react-app и развертываете в Netlify, вам нужно добавить файл _redirect в каталог public вашего проекта для поддержки маршрутизации на стороне клиента (React Router ). Он должен иметь это внутри:

/*  /index.html  200

Подробности здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...