Struct yew_components::Select[][src]

pub struct Select<T: ToString + PartialEq + Clone + 'static> { /* fields omitted */ }
Expand description

An alternative to the HTML <select> tag.

The display of options is handled by the ToString implementation on their type.

Example

#[derive(PartialEq, Clone)]
enum Scene {
    First,
    Second,
}
impl fmt::Display for Scene {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        match self {
            Scene::First => write!(f, "{}", "First"),
            Scene::Second => write!(f, "{}", "Second"),
        }
    }
}

fn view(link: ComponentLink<Model>) -> Html {
    let scenes = vec![Scene::First, Scene::Second];
    html! {
        <Select<Scene> options=scenes on_change=link.callback(|_| ()) />
    }
}

Properties

Only the on_change property is mandatory. Other (optional) properties are selected, disabled, options, class, id, and placeholder.

Trait Implementations

impl<T> Component for Select<T> where
    T: ToString + PartialEq + Clone + 'static, 
[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<T>

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

fn create(props: Self::Properties, link: ComponentLink<Self>) -> Self[src]

Components are created with their properties as well as a ComponentLink which can be used to send messages and create callbacks for triggering updates. Read more

fn update(&mut self, msg: Self::Message) -> ShouldRender[src]

Components handle messages in their update method and commonly use this method to update their state and (optionally) re-render themselves. Read more

fn change(&mut self, props: Self::Properties) -> ShouldRender[src]

When the parent of a Component is re-rendered, it will either be re-created or receive new properties in the change lifecycle method. Component’s can choose to re-render if the new properties are different than the previously received properties. Most Component’s will use props with a PartialEq impl and will be implemented like this: Read more

fn view(&self) -> Html[src]

Components define their visual layout using a JSX-style syntax through the use of the html! procedural macro. The full guide to using the macro can be found in Yew’s documentation. Read more

fn rendered(&mut self, _first_render: bool)[src]

The rendered method is called after each time a Component is rendered but before the browser updates the page. Read more

fn destroy(&mut self)[src]

The destroy method is called right before a Component is unmounted.

impl<T: Debug + ToString + PartialEq + Clone + 'static> Debug for Select<T>[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl<T> !RefUnwindSafe for Select<T>

impl<T> !Send for Select<T>

impl<T> !Sync for Select<T>

impl<T> Unpin for Select<T> where
    T: Unpin

impl<T> !UnwindSafe for Select<T>

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

impl<T, V> IntoOptPropValue<V> for T where
    T: IntoPropValue<Option<V>>, 
[src]

pub fn into_opt_prop_value(self) -> Option<V>[src]

Convert self to an optional value of a Properties struct.

impl<T> IntoPropValue<Option<T>> for T[src]

pub fn into_prop_value(self) -> Option<T>[src]

Convert self to a value of a Properties struct.

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

pub fn into_prop_value(self) -> T[src]

Convert self to a value of a Properties struct.

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.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

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.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<T> Any for T where
    T: Any