Запросить объект по id с помощью react-query v4

У меня есть реагирующий компонент, где я вызываю реагирующий запрос

  const blogQuery = useQuery(['blog'], getBlog(id));

Затем у меня есть файл api.js, в котором я храню вызовы API.

export const getBlog = async (id) => {
  try {
    const res = await axios.get(`${API_URL}/blogs/${id}`);
    return res.data;
  } catch (err) {
    throw new Error('An error occurred while fetching Blogs');
  }
};

В моей HTML-части реагирующего компонента у меня есть средство проверки ошибок, которое вызывает ошибку, если что-то случилось не так.

blogQuery.error.message
            ? 'error.message = ' + blogQuery.error.message
            : 'error = ' + blogQuery.error

В результате получаю на экране следующую ошибку

ошибка = отсутствует запросFn

Почему это происходит?

Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
0
0
94
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

вам нужно добавить функцию getBlog, теперь она просто вызывается и id как ключ для обновления при изменении ключа изменить это:

  const blogQuery = useQuery(['blog'], getBlog(id));

к этому :

  const blogQuery = useQuery(['blog',id], ()=> getBlog(id));

было бы хорошо, если бы вы могли изменить свой ответ, пожалуйста. копирование и вставка этого точного кода приведет к ошибкам на этом пути...

TkDodo 13.11.2022 09:13

Другие вопросы по теме