Skip to content

Component lifecycle

Filatov Dmitry edited this page Jun 27, 2016 · 32 revisions

Component's lifecycle is represented via various hooks called by Vidom at specific points.

getDefaultAttrs

static Object getDefaultAttrs()

The callback will be invoked once after a first instance of a component has been created.

onInitialStateRequest

Object onInitialStateRequest(
    Object attrs
)

The callback will be invoked once while a component instance is being created. The result will be stored as an initial state.

onInit

void onInit(
    Object attrs
)

The callback will be invoked once after a component instance has been created and an initial state has been calculated.

onRender

VNode onRender(
    Object attrs,
    Array children
)

The callback will be invoked when a component should be rendered. It's an essential part of the component lifecycle. It should return a single child node based on attrs, children and possible internal state of a component. This child node can be either a TagNode or another ComponentNode with a component that you've defined. This method is supposed to be pure, it should have no side effects. It's allowed to return null value, in this case <noscript/> tag will be rendered.

onMount

void onMount(
    Object attrs
)

The callback will be invoked once after a component has been mounted to the DOM.

onAttrsReceive

void onAttrsReceive(
    Object newAttrs,
    Object prevAttrs,
    Array<VNode> | null newChildren,
    Array<VNode> | null oldChildren
)

The callback will be invoked each time when a component is receiving new attributes.

shouldUpdate

Boolean shouldUpdate(
    Object newAttrs,
    Object prevAttrs,
    Array<VNode> | null newChildren,
    Array<VNode> | null oldChildren
)

The callback will be invoked each time before a component is going to perform update. If it returns false a component won't be updated and rerendered.

onUpdate

void onUpdate(
    Object newAttrs,
    Object prevAttrs,
    Array<VNode> | null newChildren,
    Array<VNode> | null oldChildren
)

The callback will be invoked each time after a component has updated its DOM.

onChildContextRequest

Object onChildContextRequest(
    Object attrs
)

The callback will be invoked each time before a component is going to pass its context to children.

onUnmount

void onUnmount()

The callback will be invoked once before a component is unmounted from the DOM.