v7.3.0

BryntumTaskBoard events in React

Listening to events

The conventional React way is used to listen to Bryntum TaskBoard events. For example, if we want to listen to taskClick event we pass the listener function to onTaskClick property. The property name must be in camel case and is case sensitive.

const taskClickHandler = useCallback(({ selection }) => {
    console.log(selection); // actual logic comes here
});

// ...

return (
    <BryntumTaskBoard
        onTaskClick={taskClickHandler}
        // other properties
    />
)

Preventable events

By returning false from a listener for an event documented as preventable the action that would otherwise be executed after the event is prevented. These events names are usually prefixed with before.

For example:

const App = props => {
    function onBeforeTaskEdit() {
        if (someCondition) {
            return false;
        }
    }

    return (
        <>
            <BryntumTaskBoard
                onBeforeTaskEdit={onBeforeTaskEdit}
            />
        </>
    )
}

Using dataChange event to synchronize data

Bryntum TaskBoard keeps all data in its stores which are automatically synchronized with the UI and the user actions. Nevertheless, it is sometimes necessary for the rest of the application to be informed about data changes. For that it is easiest to use dataChange event.

const App = props => {
    const syncData = ({ store, action, records }) => {
        console.log(`${store.id} changed. The action was: ${action}. Changed records: `, records);
        // Your sync data logic comes here
    }

    return (
        <BryntumTaskBoard
            ref={taskboardRef}
            {...taskboardConfig}
            onDataChange={syncData}
        />
    )
}

You can find details of all events that are fired by BryntumTaskBoard in the API documentation.

Contents