使用React Router防止HTML重定向重定向

时间:2019-06-29 21:18:09

标签: javascript reactjs redirect react-router

我正在检查用户是否通过react-router进行路由更改期间是否为isLoggedIn。 我看到的问题是,我要重定向的页面上出现了HTML闪烁。 这是路线的样子:

<Route bundle="example” path="example/:id” getComponent={exampleBundle("ExampleForm”)} onEnter={checkAuthAnd(showHeader)}/>

const checkAuthAnd = (setHeader) => (nextState, replace, callback) => {
  showHeader();
  checkAuth(nextState, replace, callback);
};
const checkAurth = loginRedirect(() => !getState().user.account.isLoggedIn);

const loginRedirect = (redirectCondition) => (nextState, replace, callback) => {
    const redirectIfNeeded = () => {
      if (redirectCondition()) {
        goToLogin({ replace: true });
      }
      callback();
    };

    if (canUseDOM) {
      dispatch(initAccount()).then(redirectIfNeeded, redirectIfNeeded);
    } else {
      callback();
    }
  };

这是相关的代码-再次重定向仍然可以正常工作-但我正尝试阻止从重定向页面中读取HTML。

任何帮助将不胜感激。 谢谢:)

0 个答案:

没有答案