![]() |
VOOZH | about |
UI components can trigger reactions on an Event. Event triggers differ according to the component. For example, a button component can trigger a reaction on a click event, and a table component can trigger a reaction on a page change or table row click event. To see what event triggers are available for a given component, see Components.
An event can set the state of a UI component, open or close a modal, trigger another query, or even run custom JavaScript.
For example, the GitHub PR summarizer blueprint uses a Summarize button with an event that triggers on a click. The event uses the Trigger Query reaction which runs the summarizePulls query.
In addition to working with events manually, you can use Bits AI to set up event handlers, configure event-driven actions, and optimize event logic:
How can you help me with events?.In App Builder, events and reactions work together to determine component behavior.
Components (such as button clicks or form submissions) and actions (such as execution finished) can both trigger events. Events differ depending on which component you use. For component-specific event details, see Components.
Reactions specify what happens when an event is triggered. Any component that can trigger an event has the following available reactions:
Custom reactions allow for more advanced use cases or custom behavior beyond the built-in reactions. For example, you can execute actions conditionally based on other data in the app. The following example triggers different actions based on the current user’s team:
${() => {
console.log("Trigger actions by team")
const teams = global?.user?.teams ?? []
if (teams.some(t => t?.name === "team1")) {
makeRequest0?.fetch()
} else if (teams.some(t => t?.name === "team2")) {
makeRequest1?.fetch()
} else {
makeRequest2?.fetch()
}
}}
App Builder provides functions for some types of app state changes. These functions are available with the Set Component State reaction for specific components and in post-query hooks.
pageIndex property of the table component to the page that you specify. Works with the server side pagination type.selectedRow property of the table component to the row that you specify.selectedTabIndex property of the table component to the tab index that you specify.To see what state functions are available for a given component, see Components.
Additional helpful documentation, links, and articles:
Do you have questions or feedback? Join the #app-builder channel on the Datadog Community Slack.
| |