Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 响应路由器Dom不侦听HTML对路由所做的更改';普氏状态法_Javascript_Reactjs_React Router - Fatal编程技术网

Javascript 响应路由器Dom不侦听HTML对路由所做的更改';普氏状态法

Javascript 响应路由器Dom不侦听HTML对路由所做的更改';普氏状态法,javascript,reactjs,react-router,Javascript,Reactjs,React Router,React Router Dom不侦听HTML的pushState方法对路由所做的更改。因此,它的渲染组件不应该为这些路由渲染。我完全控制路线是非常重要的 它具有高级用例。我有一大堆这样的历史记录- ['/home', '/about', '/status', '/info'] 现在,“/info”路线有一个按钮,上面写着返回主页并返回状态。单击这些按钮后,我应该返回pushState的历史记录,而不是在pushState堆栈中再按一个状态 我认为最好的方法是从npm安装“历史”模块,因为它有

React Router Dom不侦听HTML的pushState方法对路由所做的更改。因此,它的渲染组件不应该为这些路由渲染。我完全控制路线是非常重要的

它具有高级用例。我有一大堆这样的历史记录-

['/home', '/about', '/status', '/info']
现在,“/info”路线有一个按钮,上面写着返回主页并返回状态。单击这些按钮后,我应该返回pushState的历史记录,而不是在pushState堆栈中再按一个状态

我认为最好的方法是从npm安装“历史”模块,因为它有几个好的特性。在内部,它只使用HTML5的pushState。但使用react路由器,它不起作用。使用此历史记录模块更改pushState不会呈现React组件

请帮我做这个。欢迎任何解决办法或替代办法

编辑: my App.js正在呈现以下内容:

<Provider store={store}>
    <div>
      <Router>
        <div>
          <Route path="/intro/jm" component={IntroJm} />
          <Route path="/intro/nfc" component={IntroNfc} />
          <Route path="/intro/txn" component={IntroTxn} />
        </div>
      </Router>
    </div>
  </Provider>

这并没有发生。实际上,在我的react应用程序中,推送状态并没有以任何可能的方式发生。我还尝试使用npm的“历史”模块。该模块及其API正在工作,但它不会为该特定路径呈现react组件。

您可以发布一些代码吗?@StephenL-我已经包含了代码。到目前为止,有任何解决方案吗?
window.history.pushState({},"JM-Intro","/intro/jm");