Summary
In this chapter, we learned how React Query allows us to perform mutations by using the useMutation hook. By now, you should be able to create, delete, or update your server state. To make these changes, you resort to the mutation function, which, like your query function, supports any client and allows you to use GraphQL or REST as long it returns a promise.
You learned about some things the useMutation hook returns, such as the mutate and mutateAsync functions. Similar to useQuery, useMutation also returns the mutation data and error variables and gives you access to some statuses you can use to craft a better user experience. For your convenience, useMutation also returns a reset function to clear your state and an isPaused variable in case your mutation enters a paused state.
For you to customize your developer experience, you learned about some commonly used options that allow you to customize your useMutation hook experience. We then leveraged four of these options...