首页 > 解决方案 > 根据本地存储项的值反应重定向到另一个域

问题描述

我的登录应用程序 (react) 和实际 (react) 应用程序在同一个域中。当用户成功登录时,我的登录应用程序设置 localStorage。在我的实际应用程序中,我必须检查该值。如果它不存在,我必须重定向到 onload 中的登录应用程序。这样做的最佳做法是什么

标签: reactjslocal-storage

解决方案


您可以在componentDidMount下面的生命周期方法中检查它。

class LoggedInComponent extends Component {
  componentDidMount() {
    if (!localStorage.get('loggedIn')) {
      window.location = "/login";
      // You mentioned login app and actual app is deferent.
      // So you should use window.location
      // Otherwise you can use react-router's router.push('/login') function.
    }
  }
}

仅使用componentDidMount。因为react v17要弃用该componentWillMount功能。


推荐阅读