Я развернул бета-версию сайта create-react-app
на Netlify через GitHub (основная ветка CD - repo: https://github.com/willstocks-tech/ws-code-react).
Когда я перехожу на сайт, все работает отлично, я могу без проблем перемещаться между компонентами Home
About
& Contact
.
Однако, когда я обновляю страницу при просмотре одного из этих компонентов, страница возвращается совершенно пустой (с парой, казалось бы, не связанных ошибок в консоли браузера).
Есть ли что-то, что я пропустил во время моей игры? Прошу прощения за любые ошибки новичка, это мой первый опыт в React!
Я попытался создать файл netlify.toml с
[[redirects]]
from = "/*"
to = "/index.html"
status = 200
Я также создал файл _redirects (как предложено), как описано ниже.
Это мои текущие настройки:
index.js:
import React from 'react';
import ReactDOM from 'react-dom';
import App from './layout/App';
import './assets/stylesheets/index.scss';
//import * as serviceWorker from './serviceWorker';
//serviceWorker.unregister();
ReactDOM.render(<App />, document.getElementById('root'));
import React from 'react';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import Navbar from './components/navbar';
import Home from 'layout/views/home';
import About from 'layout/views/about';
import Contact from 'layout/views/contact';
import Footer from './components/footer';
class App extends React.Component {
constructor() {
super();
}
render() {
return (
<Router>
<div className="app">
<Navbar />
<div className="view">
<Switch>
<Route exact path="/" component={ Home }/>
<Route path="/about" component={ About }/>
<Route path="/contact" component={ Contact }/>
<Route render={ () => <h1>404 Error</h1> } />
</Switch>
</div> {/* view */}
<Footer />
</div> {/* app */}
</Router>
);
}
}
export default App;
С файлом / public / _redirects, который в настоящее время имеет только:
/* /index.html 200
Я ожидал, что смогу отправить человеку ссылку, чтобы сказать /about
или чтобы человек обновил страницу и увидел то же самое / обновленное содержимое, но в данный момент он просто увидит пустую страницу.