fix the liveview launch function

This commit is contained in:
Evan Almloff committed 2024-03-13 13:42:22 -05:00
1 parent 930f8bffbc
commit a428c61457
2 files changed
+19 -17

No files matched your search

+2 -1
View File
@@ -41,8 +41,9 @@ tower = { workspace = true }
dioxus = { workspace = true }
[features]
default = ["hot-reload"]
default = ["hot-reload", "multi-thread"]
axum = ["dep:axum"]
multi-thread = ["tokio/rt-multi-thread"]
hot-reload = ["dioxus-hot-reload"]
[[example]]
+17 -16
View File
@@ -9,22 +9,23 @@ pub fn launch(
contexts: Vec<Box<dyn Fn() -> Box<dyn Any> + Send + Sync>>,
platform_config: Config,
) {
tokio::runtime::Builder::new_multi_thread()
.enable_all()
.build()
.unwrap()
.block_on(async move {
platform_config
.with_virtual_dom(move || {
let mut virtual_dom = VirtualDom::new(root);
#[cfg(feature = "multi-threaded")]
let mut builder = tokio::runtime::Builder::new_multi_thread();
#[cfg(not(feature = "multi-threaded"))]
let mut builder = tokio::runtime::Builder::new_current_thread();
for context in &contexts {
virtual_dom.insert_any_root_context(context());
}
builder.enable_all().build().unwrap().block_on(async move {
platform_config
.with_virtual_dom(move || {
let mut virtual_dom = VirtualDom::new(root);
virtual_dom
})
.launch()
.await;
});
for context in &contexts {
virtual_dom.insert_any_root_context(context());
}
virtual_dom
})
.launch()
.await;
});
}