mithril-materialized
    Preparing search index...

    Interface ButtonAttrs

    Enhanced button attributes with improved TypeScript support

    // Basic button
    m(Button, { label: 'Click me' })

    // Submit button with icon
    m(Button, {
    variant: 'submit',
    label: 'Save',
    iconName: 'save',
    iconClass: 'small left'
    })

    // Reset button
    m(Button, {
    variant: 'reset',
    label: 'Clear Form'
    })
    interface ButtonAttrs {
        attr?: HtmlAttrs;
        class?: string;
        className?: string;
        iconClass?: string;
        iconName?: string;
        key?: string | number;
        label?: string;
        tooltip?: string;
        tooltipPosition?: MaterialPosition;
        variant?: ButtonVariant;
        onbeforeremove?(this: any, vnode: VnodeDOM<any, any>): void | Promise<any>;
        onbeforeupdate?(
            this: any,
            vnode: Vnode<any, any>,
            old: VnodeDOM<any, any>,
        ): boolean | void;
        oncreate?(this: any, vnode: VnodeDOM<any, any>): any;
        oninit?(this: any, vnode: Vnode<any, any>): any;
        onremove?(this: any, vnode: VnodeDOM<any, any>): any;
        onupdate?(this: any, vnode: VnodeDOM<any, any>): any;
        [property: string]: any;
    }

    Hierarchy

    • Attributes
      • ButtonAttrs

    Indexable

    • [property: string]: any

      Any other virtual element properties, including attributes and event handlers.

    Index

    Properties

    attr?: HtmlAttrs

    Use native HTML attributes directly instead Some additional HTML attributes that can be attached to the button

    class?: string

    The class name(s) for this virtual element, as a space-separated list.

    className?: string

    The class name(s) for this virtual element, as a space-separated list.

    iconClass?: string

    Icon size and position class

    'small', 'medium left', 'large right'
    
    iconName?: string

    Material icon name - see https://materializecss.com/icons.html

    key?: string | number

    A key to optionally associate with this element.

    label?: string

    Button label text (optional for icon-only buttons)

    tooltip?: string

    Tooltip text to display on hover

    tooltipPosition?: MaterialPosition

    Tooltip position

    typo: tooltipPostion -> tooltipPosition

    variant?: ButtonVariant

    Button type - determines the HTML button behavior

    'button'
    
    // Standard clickable button (default)
    variant: 'button'

    // Form submission button
    variant: 'submit'

    // Form reset button
    variant: 'reset'

    Methods

    • The onbeforeremove hook is called before a DOM element is detached from the document. If a Promise is returned, Mithril only detaches the DOM element after the promise completes.

      Parameters

      • this: any
      • vnode: VnodeDOM<any, any>

      Returns void | Promise<any>

    • The onbeforeupdate hook is called before a vnode is diffed in a update.

      Parameters

      • this: any
      • vnode: Vnode<any, any>
      • old: VnodeDOM<any, any>

      Returns boolean | void

    • The oncreate hook is called after a DOM element is created and attached to the document.

      Parameters

      • this: any
      • vnode: VnodeDOM<any, any>

      Returns any

    • The oninit hook is called before a vnode is touched by the virtual DOM engine.

      Parameters

      • this: any
      • vnode: Vnode<any, any>

      Returns any

    • The onremove hook is called before a DOM element is removed from the document.

      Parameters

      • this: any
      • vnode: VnodeDOM<any, any>

      Returns any

    • The onupdate hook is called after a DOM element is updated, while attached to the document.

      Parameters

      • this: any
      • vnode: VnodeDOM<any, any>

      Returns any