history.push
вызывает повторное рендеринг, он вызывает componentWillReceiveProps
и все идет по циклу.
Вместо этого используйте этот код:
componentDidUpdate(prevProps) {
if (
this.props.auth.isAuthenticated
&& this.props.auth.isAuthenticated !== prevProps.auth.isAuthenticated
) {
this.props.history.push('/dashboard')
}
}
Это может вызвать цикл, если выесть похожая ошибка где-то еще.