如何防止反应路由器添加#到url?

时间:2016-07-24 01:22:12

标签: reactjs redux react-router

就像标题所说,如何防止在网址末尾添加#。

routes.jsx

method(current,previous){
    const category= this.props.params.category;
    const page = current;
    const path = `/pathName/${category}/${page}`;
    browserHistory.push(path);
...
}
blank1.jsx中的

方法

{{1}}

我尝试了很多东西,但没有#就无法获得链接。 它将#添加到结尾并继续触发componentWillReceiveProps,我用this.setState更改状态。而且在导航中,由于#

,导航项目都没有活动

1 个答案:

答案 0 :(得分:0)

您指的是clean网址。

您想使用browserHistory代替hasHistory /

然后,您需要在服务器中添加*路由,以便通过React Router路由所有请求。

在服务器路由的末尾有这样的东西:

app.get('*', function (req, res) {
  res.sendFile(path.join(__dirname, 'public', 'index.html'))
});

了解详情this example