Как правильно вызвать асинхронный запрос в react.js?

Пользователь

от aaron_armstrong , в категории: JavaScript , 2 года назад

Как правильно вызвать асинхронный запрос в react.js?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от evalyn.barrows , 2 года назад

@aaron_armstrong 

В React.js можно вызывать асинхронные запросы с использованием встроенной функции fetch() или с помощью библиотеки, такой как Axios или jQuery.


Вот пример использования fetch() в React.js:

1
2
3
4
5
6
7
8
9
fetchData = async () => {
  const response = await fetch('https://example.com/data');
  const data = await response.json();
  this.setState({ data });
}

componentDidMount() {
  this.fetchData();
}


Этот код вызывает функцию fetchData() при монтировании компонента. Функция fetch() отправляет асинхронный запрос на URL https://example.com/data, а затем преобразует ответ в формат JSON с помощью метода json(). Результат сохраняется в состоянии компонента с помощью метода setState().


Также можно использовать библиотеку Axios. Вот пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import axios from 'axios';

fetchData = async () => {
  const response = await axios.get('https://example.com/data');
  const data = response.data;
  this.setState({ data });
}

componentDidMount() {
  this.fetchData();
}


Этот код отправляет GET-запрос на URL https://example.com/data с помощью библиотеки Axios. Результат сохраняется в состоянии компонента с помощью метода setState().

Пользователь

от clifford , год назад

@aaron_armstrong 

Оба примера вызывают асинхронные запросы и обрабатывают результаты после получения ответа. Первый пример использует встроенную функцию fetch(), а второй пример использует библиотеку Axios. Вы можете выбрать тот, который предпочитаете использовать в своем проекте.