У меня есть реагирующий маршрутизатор со следующими маршрутами:
'/' = Мой основной компонент приложения '/ create' = Мой дополнительный вид
В моем представлении Создать в onClick кнопки Iвыполнить вызов axios.post для публикации объекта JSON в имеющемся у нас API.
После его успешного завершения я установил переменную состояния ReturnToHome, используя Reacts setState ({ReturnToHome: true})
Inмой метод визуализации у меня есть:
if (this.state.ReturnToHome) { return ( <Redirect to='/' /> )};
ВАЖНО: Вот интересная вещь, с которой я борюсь:
1) Когда этот же вызов this.setState НЕ находится в .then ofобещание axios перенаправление работает безупречно 2) Когда this.setState находится внутри. затем обещания, оно не работает.
Я подумал, возможно, сначала это может быть проблемой с областью видимости, поэтому я сохранилэто для pThis и специально использовало pThis в .then, но это не имело положительного эффекта.
ТАКЖЕ ОТМЕТЬТЕ: Когда я впервые перехожу к своему представлению, путь: # / create.После того, как я обновлю состояние с помощью перенаправления, путь будет # # create ... Я не уверен, что это уместно, но надеюсь, что это может быть подсказка.
Любые идеи о том, почему это не такработай?Возможно, даже рабочий пример того, как это достигается в сценарии типа обещания?