浏览器历史记录React Router

时间:2016-02-16 22:54:55

标签: react-router browser-history

我正在尝试配置我的browserHistory。我的路线是

    <Route path="/test" component = {App} />

如果我创建链接,它可以正常工作。但是如果我在浏览器或网址中加入 localhost / test ,我会收到404错误。我认为它无法在服务器上找到它。

有人可以帮帮我吗?我是反应路由器的新手。我是否必须配置服务器端?

提前非常感谢你。

1 个答案:

答案 0 :(得分:1)

是的,正如React Router documentation中所述,无论浏览器请求哪条路径,您都必须配置服务器,使其始终返回索引页

使用express,假设您有一个/public/index.html文件,这样可行:

/* Your express includes and init code would go here... */

// Serve static assets normally
app.use(express.static(__dirname + '/public'))

// Handle every other route with index.html, which will contain
// a script tag to your application's JavaScript file(s).
app.get('*', function (request, response){
  response.sendFile(path.resolve(__dirname, 'public', 'index.html'))
})

重要的是app.get('*', ...,它会返回相同的内容(在这种情况下是您的index.html文件),无论您的浏览器请求哪条路径。

希望有所帮助。