diff --git a/public/app/features/plugins/pluginTemplateQueryComponentLoader.tsx b/public/app/features/plugins/pluginTemplateQueryComponentLoader.tsx index ac7d94a3f15..9a27643ace5 100644 --- a/public/app/features/plugins/pluginTemplateQueryComponentLoader.tsx +++ b/public/app/features/plugins/pluginTemplateQueryComponentLoader.tsx @@ -14,13 +14,13 @@ async function loadComponent(module) { } /** @ngInject */ -function pluginTemplateQueryComponentLoader(datasourceSrv) { +function pluginTemplateQueryComponentLoader() { return { restrict: 'E', link: async (scope, elem) => { const Component = await loadComponent(scope.currentDatasource.meta.module); const props = { - datasourceSrv, + datasource: scope.currentDatasource, query: scope.current.query, onChange: scope.onQueryChange, }; diff --git a/public/app/plugins/datasource/stackdriver/templateQueryCtrl.tsx b/public/app/plugins/datasource/stackdriver/templateQueryCtrl.tsx index 62f98625981..4900c4b15da 100644 --- a/public/app/plugins/datasource/stackdriver/templateQueryCtrl.tsx +++ b/public/app/plugins/datasource/stackdriver/templateQueryCtrl.tsx @@ -1,22 +1,36 @@ import React, { PureComponent } from 'react'; -import DatasourceSrv from 'app/features/plugins/datasource_srv'; +import StackdriverDatasource from './datasource'; interface Props { + datasource: StackdriverDatasource; query: string; - datasourceSrv: DatasourceSrv; - isValid: any; + onChange: (c: string) => void; } -export class StackdriverTemplateQueryCtrl extends PureComponent { +export class StackdriverTemplateQueryCtrl extends PureComponent { constructor(props) { super(props); } - componentDidMount() { - console.log('componentDidMount'); + async componentDidMount() { + const metricDescriptors = await this.props.datasource.getMetricTypes(this.props.datasource.projectName); + console.log(metricDescriptors); } render() { - return

Hello Stackdriver Template Query

; + return ( +
+ Query + +
+ ); } }