REFETCH_TYPE_LIST如果我从此方法中收到错误,我不想重新获取
dosomething: builder.mutation<void, number>({
query: (id) => ({
url: `api`,
method: 'PATCH',
}),
invalidatesTags: (result) => (result ? ['REFETCH_TYPE'] : []),
}),
Run Code Online (Sandbox Code Playgroud)
我能想到的就是满足这个条件,也许还有其他更好的解决方案?
您始终可以编写一个对自己来说更具可读性的抽象,例如:
function invalidateOn<T>({success: T[] = [], error: T[] = []}) {
return (result: unknown) => result ? success : error
}
dosomething: builder.mutation<void, number>({
query: (id) => ({
url: `api`,
method: 'PATCH',
}),
invalidatesTags: invalidateOn({ success: ['REFETCH_TYPE' as const] }),
}),
dosomethingElse: builder.mutation<void, number>({
query: (id) => ({
url: `api`,
method: 'PATCH',
}),
invalidatesTags: invalidateOn({ success: ['REFETCH_TYPE' as const], error: ['SOMETHING_ELSE' as const] }),
}),
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
815 次 |
| 最近记录: |