JavaScript enhancements for the Button component

Hierarchy (view full)

Constructors

Properties

_$root: HTMLElement
debounceFormSubmitTimer: number = null
defaults: ButtonConfig = ...

Button default config

elementType: (new () => Element) = HTMLElement
moduleName: string = 'govuk-button'

Name for the component used when initialising using data-module attributes.

schema: Readonly<{
    properties: {
        preventDoubleClick: {
            type: "boolean";
        };
    };
}> = ...

Button config schema

Accessors

Methods

  • Private

    Debounce double-clicks

    If the click quickly succeeds a previous click then nothing will happen. This stops people accidentally causing multiple form submissions by double clicking buttons.

    Parameters

    • event: MouseEvent

      Mouse click event

    Returns false

    Returns undefined, or false when debounced

  • Override configuration

    Parameters

    • config: {
          [key: string]: unknown;
      }

      config to override

      • [key: string]: unknown

    Returns {
        [key: string]: unknown;
    }

    • overidden config
    • [key: string]: unknown