The jira:dashboardBackgroundScript
module adds an invisible container to the
Dashboards page.
Unlike dashboard gadgets, the dashboard background script is not influenced by the dashboard page navigation changes. This makes it the perfect candidate for:
Because modules might be rendered in a different order, it is recommended to handle both scenarios.
Use the events API for communication between dashboard background scripts and dashboard gadgets.
Dashboard background script:
1 2import { events } from '@forge/bridge'; // Emit the data to already rendered dashboard gadgets events.emit('app.data-change', 'initial-data'); // Listen to data change requests from dashboard gadgets events.on('app.request-data', (payload) => { events.emit('app.data-change', 'initial-or-changed-data'); });
Dashboard gadget:
1 2import { events } from '@forge/bridge'; // Request the data in case the dashboard background script is already rendered events.emit('app.request-data'); // Listen to data change events.on('app.data-change', (payload) => { console.log('The data has changed:', payload) });
1 2modules: jira:dashboardBackgroundScript: - key: dashboard-bg-script resource: dashBgScriptResource jira:dashboardGadget: - key: dashboard-bg-script-gadget title: Hello world! description: Gadget that talks with background script. thumbnail: https://developer.atlassian.com/platform/forge/images/icons/issue-panel-icon.svg render: native resource: gadgetResource
Property | Type | Required | Description |
---|---|---|---|
key |
| Yes | A key for the module, which other modules can refer to. Must be unique within the manifest.
Regex: |
resource | string | Required if using custom UI or the latest version of UI Kit. | A reference to the static resources entry that your context menu app wants to display. See resources for more details. |
resolver | { function: string } or{ endpoint: string } | Yes | Set the Set the |
Property | Type | Description |
---|---|---|
type | string | The type of the module. |
Rate this page: