Думаю, вы могли бы посмотреть на это по-другому.
Вы можете проверить, существует ли переменная / данные, а если нет, то сделать что-то еще.
Redux повторно визуализирует компонент, когда состояние меняется. Это означает, что вам не нужно ждать, пока это произойдет.
Что-то вроде этого в вашем рендере, вероятно, подойдет:
render(){
<div>
{someDataAfter.login ? <div> I am logged in!</div> : <div> I am logged out</div>}
</div>
}
Просто для полноты картины вот ссылка , чтобы объяснить? (тройное if) в функции рендеринга.
Другое решение - обернуть компонент другим. Этот родительский компонент может проверить, вошел ли пользователь в систему. Если это так, вы можете отобразить компонент, вошедший в систему, так:
render(){
{loggedIn && <MySecuredComponent/>
}
Это не будет отображать или загружать MySecuredComponent
, пока loggedIn
не станет истинным. Значение componentDidMount
не будет срабатывать в MySecuredComponent
, пока loggedIn
не станет истинным.