pub struct RouterOutlet { /* private fields */ }Expand description
RouterOutlet component that renders the active child route
RouterOutlet is a special element that dynamically renders child routes based on the current route match. It accesses the GlobalRouter to resolve which child should be displayed.
§Example
ⓘ
use gpui_navigator::{Route, RouterOutlet, RouteParams};
use gpui::*;
// Parent layout component
fn dashboard_layout(_cx: &mut App, _params: &RouteParams) -> AnyElement {
div()
.child("Dashboard Header")
.child(RouterOutlet::new()) // Child routes render here
.into_any_element()
}
// Configure nested routes
Route::new("/dashboard", dashboard_layout)
.children(vec![
Route::new("overview", |_, _cx, _params| div().into_any_element()),
Route::new("settings", |_, _cx, _params| div().into_any_element()),
]);Implementations§
Source§impl RouterOutlet
impl RouterOutlet
Sourcepub fn named(name: impl Into<String>) -> Self
pub fn named(name: impl Into<String>) -> Self
Create a named outlet
Named outlets allow multiple outlet locations in a single parent route.
§Example
ⓘ
use gpui_navigator::{RouterOutlet, RouteParams};
use gpui::*;
// Parent layout with multiple outlets
fn app_layout(_cx: &mut App, _params: &RouteParams) -> AnyElement {
div()
.child(RouterOutlet::new()) // Main content
.child(RouterOutlet::named("sidebar")) // Sidebar content
.into_any_element()
}Trait Implementations§
Source§impl Clone for RouterOutlet
impl Clone for RouterOutlet
Source§fn clone(&self) -> RouterOutlet
fn clone(&self) -> RouterOutlet
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for RouterOutlet
impl Default for RouterOutlet
Source§impl Render for RouterOutlet
impl Render for RouterOutlet
Auto Trait Implementations§
impl Freeze for RouterOutlet
impl RefUnwindSafe for RouterOutlet
impl Send for RouterOutlet
impl Sync for RouterOutlet
impl Unpin for RouterOutlet
impl UnwindSafe for RouterOutlet
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().