freya::components

Function Dropdown

Source
pub fn Dropdown(_: DropdownProps) -> Result<VNode, RenderError>
Expand description

Select from multiple options, use alongside DropdownItem.

§Styling

Inherits the DropdownTheme theme.

§Example


fn app() -> Element {
    let values = use_signal(|| vec!["Value A".to_string(), "Value B".to_string(), "Value C".to_string()]);
    let mut selected_dropdown = use_signal(|| 0);
    rsx!(
        Dropdown {
            selected_item: rsx!( label { "{values.read()[selected_dropdown()]}" } ),
            for (i, ch) in values.iter().enumerate() {
                DropdownItem {
                    selected: selected_dropdown() == i,
                    onpress: move |_| selected_dropdown.set(i),
                    label { "{ch}" }
                }
            }
        }
    )
}

§Preview

Dropdown Preview