Задать вопрос
  • Почему Promise pending?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Вы неправильно работаете с асинхронным кодом. Вызывать его в render неправильно.
    Вы что сделать то хотите?
    Для работы с асинхронными вызовами основанными на Promise используйте метод then или async/await функции.
    Пример использования метода then:
    isValidEmail("mail@gmail.com").then(result => someAction(result));

    Пример использования async/await:
    async someHandler() {
      const result = await isValidEmail("mail@gmail.com");
    
      return someAction(result);
    }
    
    async someOtherHandler() {
      const result = await isValidEmail("mail@gmail.com");
      
      /* вызов someOtherAsyncAction тоже возвращает Promise, поэтому ждем 
         и возвращаем только когда придет результат, для этого используем 
         ключевое слово await                                             */
      return await someOtherAsyncAction(result); 
    }
    Ответ написан
    4 комментария