Преглед изворни кода

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 |_| {
+        // Set the state to Pending when the task is restarted
+        state.set(UseResourceState::Pending);
+
         // Create the user's task
         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 {
-            // 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;
             pin_mut!(fut);