1234567891011121314151617181920212223242526272829303132 |
- //! Multiwindow example
- //!
- //! This example shows how to implement a simple multiwindow application using dioxus.
- //! This works by spawning a new window when the user clicks a button. We have to build a new virtualdom which has its
- //! own context, root elements, etc.
- use dioxus::prelude::*;
- fn main() {
- dioxus::launch(app);
- }
- fn app() -> Element {
- let onclick = move |_| {
- dioxus::desktop::window().new_window(VirtualDom::new(popup), Default::default());
- };
- rsx! {
- button { onclick, "New Window" }
- }
- }
- fn popup() -> Element {
- let mut count = use_signal(|| 0);
- rsx! {
- div {
- h1 { "Popup Window" }
- p { "Count: {count}" }
- button { onclick: move |_| count += 1, "Increment" }
- }
- }
- }
|