@andrushasysoev

Запуск рендера на реакте, после завершения работы функции?

Делаю приложении с использованием API unsplash, всё готово на 90% и работает в целом хорошо, кроме одного момента, сейчас опишу в чём именно проблема:
Есть функция "authenticateCode", которая начинает свою работу, и примерно на половине её работы, до того как сработает "setBearerToken"и установится токен, запускается "ReactDOM.render", начинается отрисовка компонентов, в которых запускаются другие функции: для загрузки фотографий, информации о пользователе и т.д., но для их работы нужен токен, который ещё не успел установиться, так как функция "authenticateCode", ещё не закончила свою работу.
Мне необходимо, чтобы рендер сработал только лишь после того, как выполнится функция!
В общем, подскажите пожалуйста, как мне сделать так, чтобы мой сценарий срабатывал: дождаться окончания работы функции "authenticateCode" —> только затем запуск "ReactDOM.render"?
  • Вопрос задан
  • 78 просмотров
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега React
React не ждёт для запуска рендера максимально неудобного момента, чтобы вам насолить. Отрисовку триггерите вы сами, изменяя state или props. Никаких деталей про них вы не привели, так что точнее сказать ничего нельзя.

Попробуйте использовать что-то вроде этого:
class Something {
  state = {token: ``}

  render() {
    if (!this.state.token) {
      return null;
    }

    return <ВсёОстальное/>
  }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы