您好,我正在使用 RTK 查询进行 API 交互,但遇到一些错误,如果错误或成功,我会触发突变端点失效,始终会执行。
我正在寻找的是使突变成功的标签无效,这是我的代码
获取端点
getPosts: builder.query({
query: () => `/posts`,
providesTags: ['Posts'],
transformResponse: (response, meta, arg) => response.data,
transformErrorResponse: (response, meta, arg) => response.data?.message ?? response ,
})
突变终点
mutatePost: builder.mutation({
query: (data,id) => ({
url: id?`/posts/${id}`: `/posts`,
method: id?'PATCH':'POST',
body: data,
}),
transformResponse: (response, meta, arg) => response.data,
transformErrorResponse: (response, meta, arg) => response.data?.message ?? response ,
invalidatesTags: ['Posts'],
})
我尝试了所有可用的结果,但不符合我的期望
您可以使用回调符号
invalidatesTags: (result, error) => error ? [] : ['Posts'],