Merge pull request #2073 from ealmloff/fix-liveview-launch-builder
Fix the liveview launch function
This commit is contained in:
2 files changed
+19
-17
No files matched your search
@@ -41,8 +41,9 @@ tower = { workspace = true }
|
|||||||
dioxus = { workspace = true }
|
dioxus = { workspace = true }
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["hot-reload"]
|
default = ["hot-reload", "multi-thread"]
|
||||||
axum = ["dep:axum"]
|
axum = ["dep:axum"]
|
||||||
|
multi-thread = ["tokio/rt-multi-thread"]
|
||||||
hot-reload = ["dioxus-hot-reload"]
|
hot-reload = ["dioxus-hot-reload"]
|
||||||
|
|
||||||
[[example]]
|
[[example]]
|
||||||
|
|||||||
@@ -9,22 +9,23 @@ pub fn launch(
|
|||||||
contexts: Vec<Box<dyn Fn() -> Box<dyn Any> + Send + Sync>>,
|
contexts: Vec<Box<dyn Fn() -> Box<dyn Any> + Send + Sync>>,
|
||||||
platform_config: Config,
|
platform_config: Config,
|
||||||
) {
|
) {
|
||||||
tokio::runtime::Builder::new_multi_thread()
|
#[cfg(feature = "multi-threaded")]
|
||||||
.enable_all()
|
let mut builder = tokio::runtime::Builder::new_multi_thread();
|
||||||
.build()
|
#[cfg(not(feature = "multi-threaded"))]
|
||||||
.unwrap()
|
let mut builder = tokio::runtime::Builder::new_current_thread();
|
||||||
.block_on(async move {
|
|
||||||
platform_config
|
|
||||||
.with_virtual_dom(move || {
|
|
||||||
let mut virtual_dom = VirtualDom::new(root);
|
|
||||||
|
|
||||||
for context in &contexts {
|
builder.enable_all().build().unwrap().block_on(async move {
|
||||||
virtual_dom.insert_any_root_context(context());
|
platform_config
|
||||||
}
|
.with_virtual_dom(move || {
|
||||||
|
let mut virtual_dom = VirtualDom::new(root);
|
||||||
|
|
||||||
virtual_dom
|
for context in &contexts {
|
||||||
})
|
virtual_dom.insert_any_root_context(context());
|
||||||
.launch()
|
}
|
||||||
.await;
|
|
||||||
});
|
virtual_dom
|
||||||
|
})
|
||||||
|
.launch()
|
||||||
|
.await;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user