延迟加载嵌套路由的阻止更新

时间:2018-03-21 05:45:43

标签: react-router react-router-v4

我在管理部分使用嵌套的react-router,以避免在人们与"常规"进行交互时加载管理部分。前端。

<Switch>
    <Route
      exact
      path="/"
      component={() => (
        <HomeRoute
          goApiId={goApiId}
          fbAppId={fbAppId}
          juicerId={juicerId}
          s3Url={s3Url}
          url={url}
        />
      )}
    />


    <Route
      path="/admin"
      render={props => {
        const AdminRoutes = require('./AdminRoutes').default;
        return <AdminRoutes {...props} />;
      }}
    />
[...]
</Switch>

管理部分本身也包含Switch声明。

const AdminRoutes = () => (
<Switch>
    <PrivateRoute
    path="/admin/videos"
    component={AdminVideosRoute}
    key="route-videos"
    />
    <PrivateRoute
    exact
    path="/admin"
    component={AdminHomeRoute}
    key="route-home"
    />
</Switch>
);

非管理员路线上的所有导航都可以正常工作。但是,当我在管理员中导航时,即使位置发生变化也没有任何反应。这看起来像是一个阻止的更新。

所有Route组件都使用withRouter作为导出的首选方法,与非管理员前端相同。

有关如何消除此问题的任何建议吗?

0 个答案:

没有答案