pub struct ScrollspyProps {
pub target: String,
pub active: Signal<String>,
pub offset: i32,
}Expand description
Bootstrap Scrollspy — tracks scroll position and updates active signal.
Place this component in your layout. It watches the given target element
(by CSS selector) and updates the active signal with the id of the
currently visible section.
§Bootstrap HTML → Dioxus
| HTML | Dioxus |
|---|---|
<body data-bs-spy="scroll" data-bs-target="#nav" data-bs-offset="80"> | Scrollspy { target: "body", active: signal, offset: 80 } |
| Check active section via JS | if *active.read() == "intro" { "active" } |
let active_section = use_signal(|| String::new());
rsx! {
Scrollspy { target: "main", active: active_section, offset: 80 }
nav {
a { class: if *active_section.read() == "intro" { "nav-link active" } else { "nav-link" },
href: "#intro", "Intro" }
a { class: if *active_section.read() == "features" { "nav-link active" } else { "nav-link" },
href: "#features", "Features" }
}
}Fields§
§target: StringCSS selector for the scrollable container (e.g., “main”, “#content”, “body”).
active: Signal<String>Signal that receives the id of the currently active section.
offset: i32Offset in pixels from the top (useful for fixed/sticky navbars).
Implementations§
Trait Implementations§
Source§impl Clone for ScrollspyProps
impl Clone for ScrollspyProps
Source§fn clone(&self) -> ScrollspyProps
fn clone(&self) -> ScrollspyProps
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 ScrollspyProps
impl PartialEq for ScrollspyProps
Source§impl Properties for ScrollspyPropswhere
Self: Clone,
impl Properties for ScrollspyPropswhere
Self: Clone,
Source§type Builder = ScrollspyPropsBuilder<((), (), ())>
type Builder = ScrollspyPropsBuilder<((), (), ())>
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 ScrollspyProps
Auto Trait Implementations§
impl Freeze for ScrollspyProps
impl !RefUnwindSafe for ScrollspyProps
impl !Send for ScrollspyProps
impl !Sync for ScrollspyProps
impl Unpin for ScrollspyProps
impl UnsafeUnpin for ScrollspyProps
impl !UnwindSafe for ScrollspyProps
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.