pub struct TabListProps {
pub active: Signal<usize>,
pub tabs: Vec<TabDef>,
pub pills: bool,
pub fill: bool,
pub justified: bool,
pub class: String,
pub content_class: String,
}Expand description
Bootstrap Tabs component — signal-driven, no JavaScript.
Produces pixel-perfect Bootstrap 5.3 HTML with separated <ul class="nav nav-tabs">
and <div class="tab-content"> areas. This is the recommended component for tabs.
§Bootstrap HTML → Dioxus
<!-- Bootstrap HTML -->
<ul class="nav nav-tabs" role="tablist">
<li class="nav-item"><button class="nav-link active">Home</button></li>
<li class="nav-item"><button class="nav-link">Profile</button></li>
</ul>
<div class="tab-content border border-top-0 rounded-bottom p-3">
<div class="tab-pane fade show active">Home content</div>
<div class="tab-pane fade">Profile content</div>
</div>use dioxus_bootstrap_css::tabs::TabDef;
let active = use_signal(|| 0usize);
rsx! {
TabList {
active: active,
content_class: "border border-top-0 rounded-bottom p-3",
tabs: vec![
TabDef { label: "Home".into(), icon: Some("house".into()),
content: rsx! { p { "Home content" } } },
TabDef { label: "Profile".into(), icon: Some("person".into()),
content: rsx! { p { "Profile content" } } },
],
}
}§Props
active—Signal<usize>controlling active tab indextabs—Vec<TabDef>defining each tab’s label, icon, and contentpills— pill style instead of tabsfill— fill available widthjustified— equal-width itemscontent_class— additional CSS classes for the tab-content div (e.g.,"border border-top-0 rounded-bottom p-3"for standard Bootstrap bordered tabs)
Fields§
§active: Signal<usize>Signal controlling the active tab index.
tabs: Vec<TabDef>Tab definitions.
pills: boolUse pill style.
fill: boolFill available width.
justified: boolJustify items equally.
class: StringAdditional CSS classes for the nav.
content_class: StringAdditional CSS classes for the tab content area.
Implementations§
Source§impl TabListProps
impl TabListProps
Sourcepub fn builder() -> TabListPropsBuilder<((), (), (), (), (), (), ())>
pub fn builder() -> TabListPropsBuilder<((), (), (), (), (), (), ())>
Create a builder for building TabListProps.
On the builder, call .active(...), .tabs(...), .pills(...)(optional), .fill(...)(optional), .justified(...)(optional), .class(...)(optional), .content_class(...)(optional) to set the values of the fields.
Finally, call .build() to create the instance of TabListProps.
Trait Implementations§
Source§impl Clone for TabListProps
impl Clone for TabListProps
Source§fn clone(&self) -> TabListProps
fn clone(&self) -> TabListProps
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 PartialEq for TabListProps
impl PartialEq for TabListProps
Source§impl Properties for TabListPropswhere
Self: Clone,
impl Properties for TabListPropswhere
Self: Clone,
Source§type Builder = TabListPropsBuilder<((), (), (), (), (), (), ())>
type Builder = TabListPropsBuilder<((), (), (), (), (), (), ())>
The type of the builder for this component.
Used to create “in-progress” versions of the props.
Source§fn memoize(&mut self, new: &Self) -> bool
fn memoize(&mut self, new: &Self) -> bool
Make the old props equal to the new props. Return if the props were equal and should be memoized.
Source§fn into_vcomponent<M>(
self,
render_fn: impl ComponentFunction<Self, M>,
) -> VComponentwhere
M: 'static,
fn into_vcomponent<M>(
self,
render_fn: impl ComponentFunction<Self, M>,
) -> VComponentwhere
M: 'static,
Create a component from the props.
impl StructuralPartialEq for TabListProps
Auto Trait Implementations§
impl Freeze for TabListProps
impl !RefUnwindSafe for TabListProps
impl !Send for TabListProps
impl !Sync for TabListProps
impl Unpin for TabListProps
impl UnsafeUnpin for TabListProps
impl !UnwindSafe for TabListProps
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> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
Source§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
Create an instance of this type from an initialization function
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<Ret> SpawnIfAsync<(), Ret> for Ret
impl<Ret> SpawnIfAsync<(), Ret> for Ret
Source§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
Source§fn super_from(input: T) -> O
fn super_from(input: T) -> O
Convert from a type to another type.
Source§impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
Source§fn super_into(self) -> O
fn super_into(self) -> O
Convert from a type to another type.