反应路由器多个goBack

时间:2018-10-27 12:53:34

标签: reactjs react-router react-router-v4 browser-history react-router-dom

我有一个带有react-router的react app。我有多条路线,其中一些显示在模式窗口中。如果我关闭了模式,我想将用户发送回上一个尚未激活模式的页面。

要知道,如果我有模式打开,则在位置上使用状态modal:true。我知道我可以简单地使用history.goBack(),但是我遇到的情况是,我在/login上,并且用户从那里转到/register,但是两条路由都显示了模态。在这种情况下,如果用户单击模式上的关闭按钮,他们将首先返回到/login

我试图做类似的事情,但是history对象没有用新状态更新。

goBack = () => {
  while(true) {
   history.goBack();
   if (!history.location.state || !history.location.state.modal) {
     break;
   }
 }
}

0 个答案:

没有答案