Использование React Route, но я сталкиваюсь с этой проблемой: при определенных условиях мне нужно, чтобы приложение загружало URL-адрес, отличный от точного. Вот что я сделал:
class Application extends React.Component {
render() {
const { history } = this.props;
let loadExact = true;
if (my_condition === true) {
loadExact = false;
}
return (
<Dashboard history={history}>
<Switch>
{
loadExact ? <Route exact path="/app" component={MainPage} /> :
(
<Redirect to={{
pathname: "/app/theotherpage",
state: {from: history}
}}
/>
)
}
<Route path="/app/theotherpage" component={TheOtherPage} />
<Route component={NotFound} />
</Switch>
</Dashboard>
);
}
}
Что мне нужно, если loadExact
равно false
, затем перенаправить на /app/theotherpage
и, следовательно, загрузить его вместо /app
. Таким образом, он переходит на полностью пустую страницу и сообщает мне:
Невозможно выполнить обновление состояния React для неустановленного компонента. Это неоперация, но она указывает на утечку памяти в вашем приложении. Чтобы исправить, отмените все подписки и асинхронные задачи в методе componentWillUnmount.
Как мне решить эту проблему?