Skip to main content

Variables

The Business Text panel provides helpers to support variables. You can use variables in the JavaScript code and CSS styles.

We thoroughly explained these three types of variables in our Grafana Crash Course.

Check if a user is an admin​

To access nested variables, use curly brackets.

{{#if (contains (variable "{__user.login}") "admin")}}
User is an admin
{{else}}
User is not an admin
{{/if}}

Markdown list from variable​

Create a list from the multi select variable.

{{#each (variable "hostname")}}
- {{this}}
{{/each}}

Dynamic templates using dashboard variables​

Use the lookup helper to create dynamic templates based on dashboard variables.

The following template creates a key-value pair from every selected value in the props dashboard variable.

book:
{{#each (variable "props")}}
{{this}}: {{lookup @root this}}
{{/each}}

JavaScript code​

Get variable value​

Use the context.grafana.replaceVariables() function to replace dashboard variables in the JavaScript Code.

const bonjour = context.grafana.replaceVariables("${variable}");
console.log(bonjour.toUpperCase());

Set variable value​

Prefix var- is required to set dashboard variable.

context.grafana.locationService.partial({ "var-variableName": ".*" });

Time range values from and to should be set as is.

context.grafana.locationService.partial({ from: start, to: end });

CSS styles​

Dashboard variables are replaced automatically in the CSS styles.