mirror of
https://github.com/DioxusLabs/dioxus
synced 2024-11-10 14:44:12 +00:00
fix the web platform
This commit is contained in:
parent
aa30079633
commit
cb5a43c120
3 changed files with 23 additions and 23 deletions
22
packages/web/src/launch.rs
Normal file
22
packages/web/src/launch.rs
Normal file
|
@ -0,0 +1,22 @@
|
|||
//! This module contains the `launch` function, which is the main entry point for dioxus web
|
||||
|
||||
pub use crate::Config;
|
||||
use dioxus_core::prelude::*;
|
||||
use std::any::Any;
|
||||
|
||||
/// Launch the web application with the given root component, context and config
|
||||
///
|
||||
/// For a builder API, see `LaunchBuilder` defined in the `dioxus` crate.
|
||||
pub fn launch(
|
||||
root: fn() -> Element,
|
||||
contexts: Vec<Box<dyn Fn() -> Box<dyn Any>>>,
|
||||
platform_config: Config,
|
||||
) {
|
||||
wasm_bindgen_futures::spawn_local(async move {
|
||||
let mut vdom = VirtualDom::new(root);
|
||||
for context in contexts {
|
||||
vdom.insert_any_root_context(context());
|
||||
}
|
||||
crate::run(vdom, platform_config).await;
|
||||
});
|
||||
}
|
|
@ -71,10 +71,9 @@ mod dom;
|
|||
#[cfg(feature = "eval")]
|
||||
mod eval;
|
||||
mod event;
|
||||
pub mod launch;
|
||||
mod mutations;
|
||||
mod platform;
|
||||
pub use event::*;
|
||||
pub use platform::*;
|
||||
#[cfg(feature = "file_engine")]
|
||||
mod file_engine;
|
||||
#[cfg(all(feature = "hot_reload", debug_assertions))]
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
pub mod launch {
|
||||
use std::any::Any;
|
||||
|
||||
use dioxus_core::prelude::*;
|
||||
|
||||
pub type Config = crate::Config;
|
||||
|
||||
pub fn launch(
|
||||
root: fn() -> Element,
|
||||
contexts: Vec<Box<dyn Fn() -> Box<dyn Any> + Send>>,
|
||||
platform_config: Config,
|
||||
) {
|
||||
wasm_bindgen_futures::spawn_local(async move {
|
||||
let mut vdom = VirtualDom::new(root);
|
||||
for context in contexts {
|
||||
vdom.insert_any_root_context(context());
|
||||
}
|
||||
crate::run(vdom, platform_config).await;
|
||||
});
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue