Component class defines a user interface 'building block'. A component
generates a virtual DOM to be rendered on each redraw.
Essentially, this is a wrapper for Mithril's components that adds several useful features:
onbeforeupdatelifecycle hooks, we store vnode attrs in `this.attrs. This allows us to use attrs across components without having to pass the vnode to every single method.
initAttrsmethod allows a convenient way to provide defaults (or to otherwise modify) the attrs that have been passed into a component.
this.element; this lets us use jQuery to modify child DOM state from internal methods via the
componentmethod, which serves as an alternative to hyperscript and JSX.
As with other Mithril components, components extending Component can be initialized
and nested using JSX, hyperscript, or a combination of both. The
component method can also
The attributes passed into the component.
The root DOM element for the component.
Class component state that is persisted between redraws.
Updating this will not automatically trigger a redraw, unlike other frameworks.
This is different to Vnode state, which is always an instance of your class component.
undefined by default.
Returns a jQuery object for this component's element. If you pass in a selector string, this method will return a jQuery object, using the current element as its buffer.
For example, calling
component.$('li') will return a jQuery object
containing all of the
li elements inside the DOM element of this
the jQuery object for the DOM node
Saves a reference to the vnode attrs after running them through initAttrs, and checking for common issues.
Initialize the component's attrs.
This can be used to assign default values for missing, optional attrs.
Generated using TypeDoc version 0.22.10