При перезагрузке маршрут меняется на базовый URL, независимо от того, каким будет маршрут - PullRequest
0 голосов
/ 24 ноября 2018

Вот мой код маршрутизатора, поэтому есть два типа пользователей и маршруты в соответствии с ними.

Сначала я проверяю, является ли он аутентифицированным пользователем или нет.

Административные маршруты

  adminRoutes() {
      return (
          <Switch>
            <Route exact path="/dashboard" component={DashboardPage} />
            <Route exact path="/videos" component={AdminVideo} />
            <Redirect to="/dashboard" />
          </Switch>
        );
       }

Маршруты входа

  loginRoutes() {
    return <Switch>
    <Route exact path="/" component={LandingPage} />
    <Redirect to="/" />
   </Switch>
  }

Маршруты пользователя

 userRoutes() {
    return <Switch>
          <Route exact path="/dashboard" component={teacher} />
          <Redirect to="/dashboard" />
        </Switch>
  }


  checkForRoutes() {
      if (this.props.isAuthenticatedUser) {
         if (this.props.userType === 1) {
            return this.adminRoutes(); // admin
         } else if (this.props.userType === 2) {
           return this.userRoutes(); // user
         }
      } else {
          return this.loginRoutes();
        }
      }

метод визуализации компонента

    render() {
      return (
      <BrowserRouter>
            {this.checkForRoutes()}
      </BrowserRouter>
    );
    }

Поэтому, когда я вошел в системукак администратор и перейдите к / videos и перезагрузите страницу, она изменит URL на / dashboard

Пожалуйста, предоставьте мне решение, которое я пробовал несколько раз, но у меня не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...