使用的react-router-redux,刷新页面挂了
关于下面的问题求解:
使用react, react-redux, react-router-redux
,
如下路径都可以正常跳转
www.example.com/admin/home
www.example.com/admin/apps/list
但是当我用浏览器的刷新功能时,页面就挂了,出不来正常的页面了。
如使用F5刷新www.example.com/admin/home
结果返回的页面上是: Cannot GET /home
2 回复
找到解决方案了,具体原因和解决方案如下:
1:使用的是react-route
r的browserHistory
,同时也在使用者webpack-dev-server
,所以就要在启动webpack-dev-serve
r时,要加--history-api-fallback
参数
2:或者也可以使用react-route
r的hashHistory
,不需要加--history-api-fallback
参数就可以,然而这样有个问题就是url可视性太不友好了,全是hash
了的;
3:如果使用了nginx
,可以使用rewrite
,有人推荐,但是自己还没有实验呢。。。
我是怎么简单怎么来。
// webpack.config.babel.js
export default {
entry: "./src/index.js",
output: { filename: "./build/bundle.js" },
module: {
loaders: [
{ test: /\.js?$/, exclude: /node_modules/, loader: "babel" }
]
}
}