API, возвращающий только частичные данные - PullRequest
0 голосов
/ 02 марта 2020

Я делаю вызов API для базы данных продукта и получаю полный ответ в виде:

data: {
   data: [ 
      //Array of product objects
   ]
   meta: {
      pagination: { 
         //Pagination data
      }
   }
}

Мне нужно отправить ответ на мой редуктор. Когда я пытаюсь назначить содержимое данных и мета (из родительских данных), данные назначаются успешно, но мета возвращается как «неопределенное».

Вот мой код с Ax ios:

axios
   .get('/api', {
      params: { //API params }
   })
   .then(res => {
      const data = res.data.data;
      const meta = res.data.meta;
      dispatch({
         type: GET_PRODUCTS,
         payload: { data, meta }
      });
   });

Я также пытался присвоить ответ ax ios на константу после ожидания обратного вызова ax ios:

const res = await axios.get('/api', {
        params: { //API params }
      });
const data = await res.data.data;
const meta = await res.data.meta;
dispatch({
   type: GET_PRODUCTS,
   payload: { data, meta }
});

Оба результата приводят к следующим ответам в моем Реагируйте на внешний интерфейс:

res.data.data = [//Array of data objects]
res.data.meta = undefined

Даже если родительский элемент res содержит необходимые данные для обоих полей.

Есть идеи, что происходит? Я как бы сошел с ума.

1 Ответ

0 голосов
/ 02 марта 2020

Я обнаружил, что глупо использовал неправильную переменную в моем провайдере контекста. После обновления этой информации до нужной, данные отправлялись и загружались в мой интерфейс. Спасибо всем за терпение моей глупости!

...