Здравствуйте. Не могу разобраться в react-router.
Есть компонент Login, который должен перебрасывать на другую страницу при успешном входе.
Делаю это так(кстати, есть ли способ получше?):
class Login extends Component {
constructor(props, state) {
//...
//какой-то слушатель websocket, в случае положительного ответа сервера в конце делает так:
this.props.history.push('/main');
}
}
компонент Login находится в компоненте Routes, что-то вроде:
const Routes = () => {
return (
<div>
// ...
<Route exact path="/login" component={Login}></Route>
// ....
</div>
)
};
соответственно, он вызывается в корневом компоненте
// class такой-то
render() {
return (
<Router>
<Routes/>
</Router>
)
}
react на это дело ругается вот так:
Warning: Can only update a mounted or mounting component. This usually means you called setState, replaceState, or forceUpdate on an unmounted component. This is a no-op.
Please check the code for the Login component.
Как быть?