使用的react-router-redux,刷新页面挂了
发布于 8 年前 作者 kylezhang 10669 次浏览 来自 问答

关于下面的问题求解:

使用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-router的browserHistory,同时也在使用者webpack-dev-server,所以就要在启动webpack-dev-server时,要加--history-api-fallback参数 2:或者也可以使用react-router的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" }
		]
    }
}
回到顶部