Menu
Important: This documentation is about an older version. It's relevant only to the release noted, many of the features and functions have been updated or replaced. Please view the current version.
Enterprise
Open source
AppPlugin class
Signature
typescript
export declare class AppPlugin<T = KeyValue> extends GrafanaPlugin<AppPluginMeta<T>>
Import
typescript
import { AppPlugin } from '@grafana/data';
Properties
Property | Modifiers | Type | Description |
---|---|---|---|
root | ComponentClass<AppRootProps<T>> | ||
rootNav | NavModel |
Methods
Method | Modifiers | Description |
---|---|---|
init(meta) | Called after the module has loaded, and before the app is used. This function may be called multiple times on the same instance. The first time, this.meta will be undefined | |
setComponentsFromLegacyExports(pluginExports) | ||
setRootPage(root, rootNav) | Set the component displayed under: /a/${plugin-id}/*If the NavModel is configured, the page will have a managed frame, otheriwse it has full control.NOTE: this structure will change in 7.2+ so that it is managed with a normal react router |
root property
Signature
typescript
root?: ComponentClass<AppRootProps<T>>;
rootNav property
Signature
typescript
rootNav?: NavModel;
init method
Called after the module has loaded, and before the app is used. This function may be called multiple times on the same instance. The first time, this.meta
will be undefined
Signature
typescript
init(meta: AppPluginMeta): void;
Parameters
Parameter | Type | Description |
---|---|---|
meta | AppPluginMeta |
Returns:
void
setComponentsFromLegacyExports method
Signature
typescript
setComponentsFromLegacyExports(pluginExports: any): void;
Parameters
Parameter | Type | Description |
---|---|---|
pluginExports | any |
Returns:
void
setRootPage method
Set the component displayed under: /a/${plugin-id}/*
If the NavModel is configured, the page will have a managed frame, otheriwse it has full control.
NOTE: this structure will change in 7.2+ so that it is managed with a normal react router
Signature
typescript
setRootPage(root: ComponentClass<AppRootProps<T>>, rootNav?: NavModel): this;
Parameters
Parameter | Type | Description |
---|---|---|
root | ComponentClass<AppRootProps<T>> | |
rootNav | NavModel |
Returns:
this
Was this page helpful?
Related resources from Grafana Labs
Additional helpful documentation, links, and articles:

Getting started with the Grafana LGTM Stack
In this webinar, we’ll demo how to get started using the LGTM Stack: Loki for logs, Grafana for visualization, Tempo for traces, and Mimir for metrics.

Getting started with Grafana dashboard design (EMEA Timezone)
In this webinar, you'll learn how to design stylish and easily accessible Grafana dashboards that tell a story.

Unify your data with Grafana plugins: Datadog, Splunk, MongoDB, and more
In this webinar, learn how to leverage Grafana's plugin ecosystem for access to 80+ data sources, including plugins for Datadog, Splunk, MongoDB, and more.