社区连接器功能非常新,我搜索过,没有太多信息。我们正在构建社区连接器,以使Data Studio能够从Google My Business Insights中提取API数据。
这里描述了getconfig()函数:https://developers.google.com/datastudio/connector/reference#getconfig
我们可以向用户显示我们的配置选项,这很简单,但API参考不清楚下一步是什么:如何将用户输入传递到下一步。如果我没有在这里使用正确的条款,请原谅我。
var config = {
configParams: [
{
"type": "SELECT_SINGLE",
"name": "SELECT_SINGLE",
"displayName": "Select a Location",
"helpText": "Pick One!",
"options": [
{
"label": locationName,
"value": name
},
{
"label": "altLocationName",
"value": "altName"
}
]
},
]
};
return config;
}
前面的代码正确显示给用户,用户可以在进行初始数据连接时从Data Studio的下拉菜单中进行选择。但是以另一种方式重复这个问题:我们如何访问用户选择的选择?
答案 0 :(得分:3)
getData()
,getSchema()
和getConfig()
函数都使用参数调用(在文档中称为" request")。该参数是一个包含每个阶段各种信息的对象。
getConfig()
阶段,它包含一个名为languageCode
的属性,在我的情况下设置为'en-GB'
。getSchema()
阶段提供了一个名为configParams
的属性,该属性基本上是用户设置后getConfig()
中所有设置的结果。getData()
获取的信息最多,包括分页的开始和结束行,此请求是否用于提取Google的示例数据以运行启发式,最重要的是:configParams
以下是示例request
对象的外观:
{ //------ Present in:
languageCode: en-GB, ////// Only getConfig()
pagination: { //////-Only getData()
startRow: 1, ////-|
rowCount: 100 ////-+
}, //
configParams: { //////-getSchema() + getData()
SELECT_SINGLE: altName ////-+
}, //
scriptParams: { //////-Only getData()
sampleExtraction: true ////
}, //
fields: [ //////-Only getData()
{ name: FooAwesomeness }, ////-|
{ name: BarMagicality }, ////-|
{ name: BazPizzazz } ////-+
] //
} //------
请注意
您当前设置为name
的代码中的SELECT_SINGLE
字段更适合称为location
,因为它是您以后如何访问它的。
你会这样 访问:
request.configParams.
的location
强>
而不是request.configParams.
的SELECT_SINGLE
强>
:)
答案 1 :(得分:0)
用户选择将传递到configParams
对象下的getSchema()和getData()个请求。
使用您的示例,我们假设用户在配置屏幕中选择altLocationName
。在您的getSchema()和getData()函数中,request.configParams.SELECT_SINGLE
应返回altName
。