允许将路由传递给react-router

时间:2016-03-03 05:00:00

标签: express reactjs react-router

我有一个快速的webpack react / react路由器应用程序(^ 2.0.0-rc5)我正在努力。在express中,我使用app.use(express.static(path.join(__dirname, 'dist')));将我的反应应用程序映射到网址。

当我在我的应用中转到http://localhost:3001/时,它导航很好。然后当我点击Link按钮http://localhost:3001/diff-place时,它会导航到新页面。

然而,当我直接进入http://localhost:3001/diff-place时,表达截获请求并发出404.

我不确定如何解决这个问题,所以任何建议都值得赞赏。

1 个答案:

答案 0 :(得分:4)

在快速路由结束时,请确保您已定义了将为任何页面请求加载客户端的所有路由,并确保在示例中将index.html替换为您的html入口点。此时,react-router将启动。

app.get('*', function(req, res) {
  res.sendFile(path.resolve(__dirname + 'dist/index.html'));
});