From da4d9c70e8dc81bfa234052255ded5a851924a58 Mon Sep 17 00:00:00 2001 From: Evan Almloff Date: Wed, 6 Mar 2024 11:42:31 -0600 Subject: [PATCH] fix memo chain example --- examples/memo_chain.rs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/examples/memo_chain.rs b/examples/memo_chain.rs index 745c5d01e..2be2b88fb 100644 --- a/examples/memo_chain.rs +++ b/examples/memo_chain.rs @@ -21,25 +21,25 @@ fn app() -> Element { button { onclick: move |_| value += 1, "Increment" } button { onclick: move |_| depth += 1, "Add depth" } button { onclick: move |_| depth -= 1, "Remove depth" } - Child { depth, items, state } + if depth() > 0 { + Child { depth, items, state } + } } } #[component] fn Child(state: Memo, items: Memo>, depth: ReadOnlySignal) -> Element { - if depth() == 0 { - return None; - } - // These memos don't get re-computed when early returns happen let state = use_memo(move || state() + 1); - let item = use_memo(move || items()[depth()]); + let item = use_memo(move || items()[depth() - 1]); let depth = use_memo(move || depth() - 1); println!("rendering child: {}", depth()); rsx! { h3 { "Depth({depth})-Item({item}): {state}"} - Child { depth, state, items } + if depth() > 0 { + Child { depth, state, items } + } } }