rsx_syntax.rs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. use dioxus::prelude::*;
  2. fn basic_syntax_is_a_template(cx: Scope) -> Element {
  3. let asd = 123;
  4. let var = 123;
  5. cx.render(rsx! {
  6. div {
  7. class: "asd",
  8. class: "{asd}",
  9. onclick: move |_| {},
  10. div { "{var}" }
  11. div {
  12. h1 { "var" }
  13. p { "you're great!" }
  14. div { background_color: "red",
  15. h1 { "var" }
  16. div {
  17. b { "asd" }
  18. "not great"
  19. }
  20. }
  21. p { "you're great!" }
  22. }
  23. }
  24. })
  25. }
  26. fn basic_template(cx: Scope) -> Element {
  27. cx.render(rsx! {
  28. div {
  29. (0..2).map(|i| rsx! {
  30. div { "asd" }
  31. })
  32. }
  33. })
  34. }
  35. #[test]
  36. fn basic_prints() {
  37. let mut dom = VirtualDom::new(basic_template);
  38. let mut edits = Vec::new();
  39. dom.rebuild(&mut edits);
  40. dbg!(edits);
  41. // let renderer = dioxus_edit_stream::Mutations::default();
  42. //
  43. // dbg!(renderer.edits);
  44. }