From 8deac0956d43a6cdafbe7043e0c6456ca7f8e375 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Wed, 21 Feb 2024 23:55:50 +0100 Subject: [PATCH 1/2] use_future_with: simplify code a bit by using read-only use_memo rather than use_state --- packages/yew/src/suspense/hooks.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/yew/src/suspense/hooks.rs b/packages/yew/src/suspense/hooks.rs index b31a57663d6..7f759084804 100644 --- a/packages/yew/src/suspense/hooks.rs +++ b/packages/yew/src/suspense/hooks.rs @@ -94,7 +94,7 @@ where let output = use_state(|| None); // We only commit a result if it comes from the latest spawned future. Otherwise, this // might trigger pointless updates or even override newer state. - let latest_id = use_state(|| Cell::new(0u32)); + let latest_id = use_memo_base(|()| (Cell::new(0u32), ()), ()); let suspension = { let output = output.clone(); From a3f3bb5785c49540eeae760d3e7c44d1ad5d023c Mon Sep 17 00:00:00 2001 From: Elina Date: Sun, 4 Aug 2024 01:36:44 +0500 Subject: [PATCH 2/2] use use_ref instead of use_memo_base --- packages/yew/src/suspense/hooks.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/yew/src/suspense/hooks.rs b/packages/yew/src/suspense/hooks.rs index 7f759084804..3d975e346fd 100644 --- a/packages/yew/src/suspense/hooks.rs +++ b/packages/yew/src/suspense/hooks.rs @@ -94,8 +94,7 @@ where let output = use_state(|| None); // We only commit a result if it comes from the latest spawned future. Otherwise, this // might trigger pointless updates or even override newer state. - let latest_id = use_memo_base(|()| (Cell::new(0u32), ()), ()); - + let latest_id = use_ref(|| Cell::new(0u32)); let suspension = { let output = output.clone();