我在电子设备中设置了反应路由器。当我将应用程序加载到我的浏览器中,并且不通过电子进行时,一切正常,路由器也很好。
但是当我在电子中使用它时,我的软件最初并不是根路线。我可以使用我创建的链接导航到根路由,并且工作正常。但它最初并不存在,我得到了404.但我没有收到任何错误。
所以当我开始它时,它看起来像这样:
但链接全部工作,所以我可以点击Home上的例子,重定向到Home路线:
我的开关如下所示:
<Switch>
<Route exact path='/' component={Home}/>
<Route component={NotFound}/>
</Switch>
该组件位于另一个组件中:
import React from 'react';
import Header from './Header.jsx'
import Main from './Main.jsx'
export default class App extends React.Component {
render() {
return (
<div style={{textAlign: 'center'}}>
<Header />
<Main />
</div>);
}
}
位于此组件中:
import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/App.jsx';
import {BrowserRouter} from 'react-router-dom'
ReactDOM.render(
<BrowserRouter>
<App />
</BrowserRouter>,
document.getElementById('root'));
这里也是保存路线的Main.js:
const Main = () => (
<main>
<Switch>
<Route exact path='/' component={Home}/>
<Route component={NotFound}/>
</Switch>
</main>
)
就我而言,一切都应该正常工作,正如我所说,它在浏览器中也是如此。但电子似乎没有在/
启动我的反应路由器。为什么会这样?