[][src]Struct yew_styles::forms::form_select::FormSelect

pub struct FormSelect { /* fields omitted */ }

Form Select

Features required

forms

Example

use yew::prelude::*;
use yew_styles::forms::form_select::FormSelect;
use yew_styles::styles::{Size};

pub struct FormSelectExample {
    pub link: ComponentLink<Self>,
    pub value: String,
}

pub enum Msg {
    Select(String),
}

impl Component for FormSelectExample {
    type Message = Msg;
    type Properties = ();
    fn create(_: Self::Properties, link: ComponentLink<Self>) -> Self {
        FormSelectExample {
            link,
            value: "".to_string(),
        }
    }
    fn update(&mut self, msg: Self::Message) -> ShouldRender {
        match msg {
            Msg::Select(value) => {
                self.value = value;
            }
        }
        true
    }
    fn change(&mut self, _props: Self::Properties) -> ShouldRender {
        false
    }

    fn view(&self) -> Html {
        html!{
            <FormSelect
                select_size=Size::Medium
                onchange_signal = form_page.link.callback(|e: ChangeData|
                    match e {
                        ChangeData::Select(element) => {
                            let value = element.value();
                            Msg::Select(value)
                        },
                        _ => unreachable!(),
                    }
                )
                options=html!{
                    <>
                        <option value="" disabled=true>{"Select library"}</option>
                        <option value="yew">{"Yew"}</option>
                        <option value="yew_styles">{"Yew Styles"}</option>
                        <option value="yew_prism">{"Yew prism"}</option>
                    </>
                }
            />
        }
    }

Trait Implementations

impl Component for FormSelect[src]

type Message = Msg

Messages are used to make Components dynamic and interactive. Simple Component's can declare their Message type to be (). Complex Component's commonly use an enum to declare multiple Message types. Read more

type Properties = Props

Properties are the inputs to a Component and should not mutated within a Component. They are passed to a Component using a JSX-style syntax. Read more

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Any for T where
    T: Any

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<COMP> Renderable for COMP where
    COMP: Component
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,