Просмотр исходного кода

Fix for Counters sample code in README (#2209)

* Fix for Counters sample code in README.md

Fix for Counters sample code in README. It was throwing syntax errors.

* Update README.md

Fix

* slightly simplify counter example with the writable vec extension trait

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
koti 1 год назад
Родитель
Сommit
57e05dcf3a
1 измененных файлов с 12 добавлено и 11 удалено
  1. 12 11
      README.md

+ 12 - 11
README.md

@@ -254,19 +254,19 @@ Leptos is a library for building fullstack web-apps, similar to SolidJS and Soli
 
 ```rust
 fn Counters() -> Element {
-  let mut counters = use_signal(|| vec![0; initial_length]);
-
-  rsx! {
-    button { onclick: move |_| counters.push(counters.len()); "Add Counter" }
-    ul {
-      for idx in 0..counters.len() {
-        li {
-          button { onclick: move |_| counters[idx] += 1; "{counters[idx]}" }
-          button { onclick: move |_| { counters.write().remove(idx); } "Remove" }
+    let mut counters = use_signal(|| vec![0; 10]);
+
+    rsx! {
+        button { onclick: move |_| counters.push(counters.len()), "Add Counter" }
+        ul {
+            for idx in 0..counters.len() {
+                li {
+                    button { onclick: move |_| counters.write()[idx] += 1, "{counters.index(idx)}" }
+                    button { onclick: move |_| { counters.remove(idx); }, "Remove" }
+                }
+            }
         }
-      }
     }
-  }
 }
 ```
 
@@ -293,6 +293,7 @@ fn Counters() -> Element {
             </li>
         </For>
     }
+}
 ```
 
 - **`Copy` state**: Dioxus 0.1 to 0.4 relied on lifetimes to relax the rules of Rust's borrow checker. This worked well for event handlers, but struggled around async. In Dioxus 0.5, we've switched to a [`Copy` state model](https://crates.io/crates/generational-box) borrowed from Leptos.