React router не отображает защищенные маршруты - PullRequest
0 голосов
/ 02 июля 2019

Я создал защищенные маршруты только для аутентифицированных пользователей, но что-то идет не так.

const PrivateRoute = inject('rootStore')(observer(({ rootStore, component: Componenet, ...rest }: any) => (
    <Route {...rest} render={(props) => (
        rootStore!.identityStore.isAuthenticated
        ? <Componenet {...props} />
        : <Redirect to="/login" />
    )} />
)))

const App = (<Provider rootStore={new RootStore()} >
    <HashRouter>
        <Switch>
            <Route exact path="/login" component={Login} />
            <Navbar />
            <div className="page-container" >
                <Header />

                <div className="main-content">
                    <div className="section__content section__content--p30">
                        <div className="container-fluid">
                            <PrivateRoute exact path="/" component={Dashboard} />
                            <PrivateRoute exact path="/notifications" component={Dashboard} />
                            <PrivateRoute exact path="/members" component={Members} />
                            <PrivateRoute exact path="/add-member" component={AddMember} />
                            <Footer />
                        </div>
                    </div>
                </div>
            </div>
        </Switch>
    </HashRouter >
</Provider>)

const rootElement = document.getElementById('page-wrapper')

ReactDOM.render(App, rootElement)

Единственный компонент, который выполняет визуализацию, - это Navbar, также перенаправление не работает, но если я вручную ввожу логин вПанель URL, то это работает.Защищенные маршруты не работают ни при навигации по NavBar, ни при ручном вводе URL.Я много отлаживал, но устал и не могу найти проблемы, буду рад, если кто-нибудь сможет мне помочь.Я использую mobx!

enter image description here

...