diff --git a/public/app/features/dashboard-scene/solo/SoloPanelPage.tsx b/public/app/features/dashboard-scene/solo/SoloPanelPage.tsx
index f94152f3b99..306776911de 100644
--- a/public/app/features/dashboard-scene/solo/SoloPanelPage.tsx
+++ b/public/app/features/dashboard-scene/solo/SoloPanelPage.tsx
@@ -77,6 +77,7 @@ export function SoloPanelRenderer({ dashboard, panelId }: { dashboard: Dashboard
return (
+ {renderHiddenVariables(dashboard)}
@@ -84,6 +85,28 @@ export function SoloPanelRenderer({ dashboard, panelId }: { dashboard: Dashboard
);
}
+// Some variables like ScopesVariable needs
+// to be rendered for their logic to work even if hidden
+function renderHiddenVariables(dashboard: DashboardScene) {
+ if (!dashboard.state.$variables) {
+ return null;
+ }
+
+ const variables = dashboard.state.$variables.state.variables;
+
+ return (
+ <>
+ {variables.map((variable) => {
+ if (variable.UNSAFE_renderAsHidden) {
+ return ;
+ }
+
+ return null;
+ })}
+ >
+ );
+}
+
const getStyles = (theme: GrafanaTheme2) => ({
container: css({
position: 'fixed',