簡體   English   中英

在哪里調用 RTKQ useMutation() 的重置方法?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM