React-query, Неверный вызов ловушки
Я пытаюсь сделать функцию, чтобы легко выполнять запросы. Возможно я изначально все сделал не так, буду рад, если вы меня поправите. Я создал файл Request.js:
import React from "react";
import { useQuery } from 'react-query'
export const Request = (method = "GET", body = {}, url = 'http://localhost:3000/notes') => {
const parameters = {
headers: {
'Content-Type': 'application/json',
},
method: method,
};
if (method == "POST" || method == "PUT") {
parameters.body = JSON.stringify(body);
}
const { status, data, isFetching, error } = useQuery("repoData", async (url, parameters) => {
return await fetch(
url, parameters
)
});
if (status === 'loading') {
return <div>loading...</div> // loading state
}
if (status === 'error') {
return <div>{error.message}</div> // error state
}
return data;
};
И в index.js я назвал эту функцию
import { Request } from './Request/Request';
console.log(Request());
Но у меня есть ошибка Ошибка: недопустимый вызов ловушки. Хуки могут быть вызваны только внутри тела функционального компонента.