如何调用Redux-toolkit-query手动打开按钮单击



我正在使用Redux-toolkit-query从服务器获取数据。现在我想调用我的查询按钮点击,而不是自动。我试过了,但是不工作。

const { data, refetch } = useGetBuisnessAreasQuery({
enable: false,
refetchOnWindowFocus: false,
manual: true,
refetchOnReconnect: false,
});

您必须使用延迟查询钩子:

const [ trigger, { data } ] = api.endpoints.getBuisnessAreas.useLazyQuery()
const onClick = () => {
trigger()
}

我就是这样做的,这样更简洁:

infeature/service.ts:

export const authenticationApi = createApi({
reducerPath: 'myApi',
baseQuery: fetchBaseQuery({ baseUrl: baseUrl }),
endpoints: builder => ({
attemptLogin: builder.query({
query: (credentials) => ({
url: '/',
body: JSON.stringify(body)
})
})
})
})
export const { useLazyAttemptLoginQuery } = authenticationApi

和使用

const [getAuthenticated, { data, isLoading, error }] = useLazyAttemptLoginQuery()

最新更新