[英]Where to call reset method for RTKQ useMutation()?
從 RTK 1.7.0 開始,突變結果 object 有一個reset()
方法來取消訂閱來自另一個組件的突變的 state 更新:
const [mutate, { isLoading, reset }] = useMutation({ fixedCacheKey });
我用它從另一個組件的突變中獲取isLoading
state。 但我不知道在哪里調用清理reset()
:
在點擊處理程序中:
await mutate() reset()
或者在清理
useEffect(() => () => reset(), [reset])
如果是這種情況,那么我是否需要對兩個(原始和訂閱者)組件都執行此操作? 這很奇怪: reset
function 的身份在 state 更新后發生了變化,所以isLoading
在它發生變化后立即被清除。
我認為關於這個 function 的文檔不是很清楚。 希望有人可以改進它。
我正在使用 React 17.0.2、RTK 1.7.1。
突變永遠不會在第一處的不同組件中的使用之間共享 state - 除非您使用fixedCacheKey
強制這樣做。 你可能想在這里解決一個非問題嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.