React Router hashHistory goBack函数如何工作

时间:2018-06-27 10:57:40

标签: javascript reactjs react-router history browser-history

我正在使用React-router 3.2.0,所以我在应用程序中有一个按钮,如下所示,我在该按钮上调用了hashHistory的goBack函数

Router.hashHistory.goBack();

我工作正常,但需要在调用之前添加一些条件。所以我的问题就像我在3个链接之间移动

  1. 首页
  2. 仪表板
  3. 设置

最初它将位于Home,然后我移至Dashboard,然后移至Settings。现在,我单击了当时我调用了goBack()函数的按钮,当时当前历史记录位置是Settings,到达位置Dashboard后移到Home,然后移到Home没有这样的历史记录位置。

所以这是我需要检查是否存在任何历史记录位置。

if(/*history exist*/){
 call goBack();
} else {
 //do my stuff
}

在react-router 3.2.0版本中有什么方法吗?

1 个答案:

答案 0 :(得分:0)

history中的react-router对象有一个length property indicating how many entries are in the stack

if (history.length !== 0) {
 goBack();
} else {
 // do my stuff
}