瀏覽代碼

fixed the bug when future restarts the state goes to ready instead of pending (#3617)

* fiexed the bug when future restarts the state goes to ready instead of pending

* fix typo

* Fix future and formatting

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
Avinash jain 3 月之前
父節點
當前提交
bdf87aadc7
共有 1 個文件被更改,包括 5 次插入2 次删除
  1. 5 2
      packages/hooks/src/use_resource.rs

+ 5 - 2
packages/hooks/src/use_resource.rs

@@ -29,12 +29,15 @@ where
     });
     });
 
 
     let cb = use_callback(move |_| {
     let cb = use_callback(move |_| {
+        // Set the state to Pending when the task is restarted
+        state.set(UseResourceState::Pending);
+
         // Create the user's task
         // Create the user's task
         let fut = rc.reset_and_run_in(&mut future);
         let fut = rc.reset_and_run_in(&mut future);
 
 
-        // Spawn a wrapper task that polls the inner future and watch its dependencies
+        // Spawn a wrapper task that polls the inner future and watches its dependencies
         spawn(async move {
         spawn(async move {
-            // move the future here and pin it so we can poll it
+            // Move the future here and pin it so we can poll it
             let fut = fut;
             let fut = fut;
             pin_mut!(fut);
             pin_mut!(fut);