【发布时间】:2022-01-21 18:29:01
【问题描述】:
我正在接收一个 cat 道具,并希望在使用 RTK 查询更改 cat 时从 api 获取数据。但是出现以下错误:
React Hook "useGetProductsQuery" cannot be called inside a callback".
每当cat 更改时如何创建RTK query?
const Products = ({cat,filter,sort}) => {
const [products, setproducts] = useState([])
const [filters, setFilters] = useState([])
useEffect(()=>{
const {data,isError,isLoading}=useGetProductsQuery()
console.log(data,isError,isLoading)
},[cat])
}
import { createApi, fetchBaseQuery }
from'@reduxjs/toolkit/query/react';
const baseUrl=process.env.REACT_APP_ECOMMERCE_API_URL
const createRequest = (url) => ({ url });
export const ecommApi = createApi({
reducerPath: 'ecommApi',
baseQuery: fetchBaseQuery({baseUrl}),
endpoints: (builder) => ({
getProducts: builder.query({
query: () => createRequest("/api/v1/products")
}),
})
})
export const{useGetProductsQuery}=ecommApi;
【问题讨论】:
标签: api redux redux-toolkit rtk-query