I am trying to iterate over the result of calling function X, but I get the error: 'X is not a function or its return value is not iterable.
I am using RTK Query. I am fetching data using post call on button click.
this is how my code looks like
searchApiSlice.js
export const searchApiSlice = apiSlice.injectEndpoints({
endpoints: (builder) => ({
searchCustomers: builder.query({
query: (reqBody) => ({
url: '/customers/search',
method: 'POST',
body: reqBody
})
}),
})
});
export const { useSearchCustomersQuery } = searchApiSlice;
SearchControls.js
function SearchControls(){
const req = { startDate: "2024-10-01T12:00:00", endDate: "2024-08-29T12:00:00" };
const [ trigger, { data } ] = api.endpoints.searchCustomers.useLazyQuery();
function handleSearch(args){
trigger(args)
}
return(
<div>
<button type="button" onClick={() => handleSearch(req)}>Search</button>
</div>
);
}
export default SearchControls;
What could be causing this issue? I have checked that X is defined, but I am still encountering this error.
TypeError
(0 , _searchApiSlice__WEBPACK_IMPORTED_MODULE_1__.useSearchCustomersQuery) is not a function or its return value is not iterable