我像往常一样调用突变方法,
const [addTodo] = useAddTodoMutation();
因此,我们有来自查询生成器的isLoading,isSuccess,isError,error
这样的选项(来自GET请求)。但是,我们就不能对突变也有同样的选择吗?
它已经在那里了:)
对于查询挂钩,返回值是一个包含data
和各种加载/状态标志的对象:const { data, isFetching} = useSomeQuery()
。
对于突变挂钩,返回值是一个元组,其中包含";触发器";函数作为第一个条目,包含状态标志的对象作为第二个条目:const [trigger, objectWithStatusFlags] = useSomeMutation()
:
- https://redux-toolkit.js.org/rtk-query/api/created-api/hooks#usemutation
因此,只需提取该对象(并可选地从中销毁字段):
// Either this:
const [addTodo, mutationFlags] = useAddTodoMutation();
// or this:
const [addTodo, {isLoading}] = useAddTodoMutation();