simple.rs 959 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //! Example: README.md showcase
  2. //!
  3. //! The example from the README.md.
  4. use dioxus::prelude::*;
  5. use dioxus_core as dioxus;
  6. use dioxus_core_macro::*;
  7. use dioxus_hooks::use_state;
  8. use dioxus_html as dioxus_elements;
  9. use dioxus_web;
  10. use gloo_timers::future::TimeoutFuture;
  11. fn main() {
  12. wasm_logger::init(wasm_logger::Config::new(log::Level::Debug));
  13. dioxus_web::launch(App, |c| c);
  14. }
  15. static App: Component<()> = |cx, props| {
  16. let show = use_state(cx, || true);
  17. let inner = match *show {
  18. true => {
  19. rsx!( div {
  20. "hello world"
  21. })
  22. }
  23. false => {
  24. rsx!( div {
  25. // h1 {
  26. "bello world"
  27. // }
  28. })
  29. }
  30. };
  31. rsx!(cx, div {
  32. button {
  33. "toggle"
  34. onclick: move |_| {
  35. let cur = *show;
  36. show.set(!cur);
  37. }
  38. }
  39. {inner}
  40. })
  41. };