如何摆脱嵌套在BrowserRouter内的MemoryRouter?

问题描述

问题在于,我需要通过3个组件来路由而不更改URL,但是还有一些组件确实可以更改路由。

所以我将MemoryRouter嵌套在browserRouter内,但是当我进入MemoryRouter时,没有发出信号。

我已经尝试过:-

   const history=createbrowserHistory();
    window.browserHistory=history;
    <browserRouter history={history}>   
    <Switch>
      <Route path="/quotes" component={QuotePage} />
      <Route exact path="/" component={GreetingPage} />
    </Switch>
    </browserRouter>

在MemoryRouter内部,我有类似的东西。

<MemoryRouter>
  <Switch>
    <Route exact path="/" component={Form1} />
    <Route path="/form2" component={Form2} />
  </Switch>
<MemoryRouter>

在Form 2中,我有一个调用函数

window.browserHistory.push("/quotes");

现在,链接中可以看到“ / quotes”,但该组件未加载。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)