pub struct RouterConfig<R: Routable> { /* private fields */ }
Expand description

Global configuration options for the router.

This implements Default and follows the builder pattern, so you can use it like this:

#[derive(Clone, Routable)]
enum Route {
    #[route("/")]
    Index {},
}
let cfg = RouterConfig::default().history(WebHistory::<Route>::default());

Implementations§

source§

impl<R> RouterConfig<R>
where R: Routable, <R as FromStr>::Err: Display,

source

pub fn on_update( self, callback: impl Fn(GenericRouterContext<R>) -> Option<NavigationTarget<R>> + 'static ) -> Self

A function to be called whenever the routing is updated.

The callback is invoked after the routing is updated, but before components and hooks are updated.

If the callback returns a NavigationTarget the router will replace the current location with it. If no navigation failure was triggered, the router will then updated dependent components and hooks.

The callback is called no more than once per rerouting. It will not be called if a navigation failure occurs.

Defaults to None.

source

pub fn history(self, history: impl HistoryProvider<R> + 'static) -> Self

The HistoryProvider the router should use.

Defaults to a different history provider depending on the target platform.

source

pub fn initial_route(self, route: R) -> Self

The initial route the router should use if no history provider is set.

source

pub fn failure_external_navigation(self, component: fn() -> Element) -> Self

A component to render when an external navigation fails.

Defaults to a router-internal component called FailureExternalNavigation

Trait Implementations§

source§

impl<R: Routable + Clone> Default for RouterConfig<R>
where <R as FromStr>::Err: Display,

source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<R> Freeze for RouterConfig<R>
where R: Freeze,

§

impl<R> !RefUnwindSafe for RouterConfig<R>

§

impl<R> !Send for RouterConfig<R>

§

impl<R> !Sync for RouterConfig<R>

§

impl<R> Unpin for RouterConfig<R>
where R: Unpin,

§

impl<R> !UnwindSafe for RouterConfig<R>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, O> SuperFrom<T> for O
where O: From<T>,

source§

fn super_from(input: T) -> O

Convert from a type to another type.
source§

impl<T, O, M> SuperInto<O, M> for T
where O: SuperFrom<T, M>,

source§

fn super_into(self) -> O

Convert from a type to another type.
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more