[−][src]Struct seed::app::builder::Builder
Used to create and store initial app configuration, ie items passed by the app creator.
Methods
impl<Ms, Mdl, ElC: View<Ms> + 'static, GMs: 'static, IAM: 'static, MP, II, InitAPIType: InitAPIData<IntoInit = II, MountPoint = MP, IntoAfterMount = IAM>> Builder<Ms, Mdl, ElC, GMs, InitAPIType>
[src]
pub fn init<NewII: IntoInit<Ms, Mdl, ElC, GMs>>(
self,
new_init: NewII
) -> Builder<Ms, Mdl, ElC, GMs, MountPointInitInitAPI<MP, NewII>>
[src]
self,
new_init: NewII
) -> Builder<Ms, Mdl, ElC, GMs, MountPointInitInitAPI<MP, NewII>>
Used for compatibility with old Init API. Use before_mount
and after_mount
instead.
pub fn mount<NewMP: MountPoint>(
self,
new_mount_point: NewMP
) -> Builder<Ms, Mdl, ElC, GMs, MountPointInitInitAPI<NewMP, II>>
[src]
self,
new_mount_point: NewMP
) -> Builder<Ms, Mdl, ElC, GMs, MountPointInitInitAPI<NewMP, II>>
Used for compatibility with old Init API. Use before_mount
and after_mount
instead.
Choose the element where the application will be mounted.
The default one is the element with id
= "app".
Examples
// argument is `&str` mount("another_id") // argument is `HTMLElement` // NOTE: Be careful with mounting into body, // it can cause hard-to-debug bugs when there are other scripts in the body. mount(seed::body()) // argument is `Element` mount(seed::body().querySelector("section").unwrap().unwrap())
pub fn before_mount(
self,
before_mount: impl FnOnce(Url) -> BeforeMount + 'static
) -> Builder<Ms, Mdl, ElC, GMs, BeforeAfterInitAPI<IAM>>
[src]
self,
before_mount: impl FnOnce(Url) -> BeforeMount + 'static
) -> Builder<Ms, Mdl, ElC, GMs, BeforeAfterInitAPI<IAM>>
Select HTML element where the app will be mounted and how it'll be mounted.
See BeforeMount::mount_point
and BeforeMount::mount_type
docs for more info.
Example
fn before_mount(_url: Url) -> BeforeMount { BeforeMount::new() .mount_point("main") .mount_type(MountType::Takeover) }
pub fn after_mount<AM: 'static + IntoAfterMount<Ms, Mdl, ElC, GMs>>(
self,
after_mount: AM
) -> Builder<Ms, Mdl, ElC, GMs, BeforeAfterInitAPI<AM>>
[src]
self,
after_mount: AM
) -> Builder<Ms, Mdl, ElC, GMs, BeforeAfterInitAPI<AM>>
You can create your Model
and handle initial URL in this method.
See AfterMount::url_handling
for more info about initial URL handling.
Example
fn after_mount(_url: Url, _orders: &mut impl Orders<Msg, GMsg>) -> AfterMount<Model> { let model = Model { clicks: 0 }; AfterMount::new(model).url_handling(UrlHandling::None) }
pub fn routes(self, routes: RoutesFn<Ms>) -> Self
[src]
Registers a function which maps URLs to messages.
When you return None
, Seed doesn't call your update
function
and also doesn't push the new route or prevent page refresh.
It's useful if the user clicked on a link and Seed shouldn't intercept it,
because it's e.g. a download link.
Example
fn routes(url: Url) -> Option<Msg> { Some(Msg::UrlChanged(url)) }
pub fn window_events(self, window_events: WindowEventsFn<Ms, Mdl>) -> Self
[src]
Registers a function which decides how window events will be handled.
Example
fn window_events(_model: &Model) -> Vec<Listener<Msg>> { vec![keyboard_ev(Ev::KeyDown, Msg::KeyPressed)] }
pub fn sink(self, sink: SinkFn<Ms, Mdl, ElC, GMs>) -> Self
[src]
Registers a sink function.
The sink function is a function which can update the model based on global messages. Consider to use a sink function when a submodule needs to trigger changes in other modules.
Example
fn sink(g_msg: GMsg, _model: &mut Model, _orders: &mut impl Orders<Msg, GMsg>) { match g_msg { GMsg::SayHello => log!("Hello!"), } }
impl<Ms: 'static, Mdl, ElC: View<Ms> + 'static, GMs: 'static, InitAPIType: InitAPI<Ms, Mdl, ElC, GMs, Builder = Self>> Builder<Ms, Mdl, ElC, GMs, InitAPIType>
[src]
pub fn build_and_start(self) -> App<Ms, Mdl, ElC, GMs>
[src]
Build, mount and start the app.
impl<Ms: 'static, Mdl, ElC: View<Ms> + 'static, GMs: 'static, MP: MountPoint, II: IntoInit<Ms, Mdl, ElC, GMs>> Builder<Ms, Mdl, ElC, GMs, MountPointInitInitAPI<MP, II>>
[src]
pub fn finish(self) -> App<Ms, Mdl, ElC, GMs>
[src]
Please use .build_and_start
instead
Auto Trait Implementations
impl<Ms, Mdl, ElC, GMs, InitAPIType> RefUnwindSafe for Builder<Ms, Mdl, ElC, GMs, InitAPIType> where
InitAPIType: RefUnwindSafe,
InitAPIType: RefUnwindSafe,
impl<Ms, Mdl, ElC, GMs, InitAPIType> Send for Builder<Ms, Mdl, ElC, GMs, InitAPIType> where
InitAPIType: Send,
InitAPIType: Send,
impl<Ms, Mdl, ElC, GMs, InitAPIType> Sync for Builder<Ms, Mdl, ElC, GMs, InitAPIType> where
InitAPIType: Sync,
InitAPIType: Sync,
impl<Ms, Mdl, ElC, GMs, InitAPIType> Unpin for Builder<Ms, Mdl, ElC, GMs, InitAPIType> where
InitAPIType: Unpin,
InitAPIType: Unpin,
impl<Ms, Mdl, ElC, GMs, InitAPIType> UnwindSafe for Builder<Ms, Mdl, ElC, GMs, InitAPIType> where
InitAPIType: UnwindSafe,
InitAPIType: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,