我很难将create-react-app应用程序部署到gh-pages。我的目标网页工作正常,但我的其他两个页面没有加载,我得到404错误。我找到了文档,它说gh-pages不支持使用HTML 5 pushState的路由器。这意味着什么?如何让我的应用程序在没有任何问题的情况下运行?
app.js:
import React, { Component } from 'react';
import {HashRouter, Switch, Route} from 'react-router-dom';
import Navigation from './Components/Navigation';
import Landing from './Components/Landing';
import ToiletInfo from './Components/ToiletInfo';
import Location from './Components/Location';
import {data} from './data';
import './App.css';
class App extends Component {
render() {
return (
<HashRouter>
<Switch>
<div className="App">
<Navigation />
<Route
exact path='/'
render={(props) => <Landing {...props} data={data} />}
/>
<Route
exact path='/ToiletInfo'
render={(props) => <ToiletInfo {...props} data={data} />}
/>
<Route
exact path='/Location'
render={(props) => <Location {...props} data={data} />}
/>
{/* // <Landing data={data}/> */}
</div>
</Switch>
</HashRouter>
);
}
}
export default App;
答案 0 :(得分:0)
在大多数具有ByRef
客户端路由的单页应用中,如果路由不匹配,您需要告诉服务器提供/呈现react-router
,这在github页面中是不可能的。你需要遵循这个https://github.com/facebook/create-react-app/issues/1765。
快递示例:
index.html
但是你可以在这里找到另一个用例:https://angular.io/guide/deployment