首页 > 解决方案 > 使用 Google Picker API 以列表格式查看我的团队驱动器

问题描述

如果我在下面的代码中插入下一行 .setMode (google.picker.DocsViewMode.LIST),Chrome 代码检查器会向我显示一个错误并且我没有显示!如果我将此行放在注释中,我的代码就可以工作,并且我会以缩略图的形式获得带有团队驱动器的 Picker 显示。

我希望以列表形式显示团队驱动器....有人有解决方案吗?

function OpenFolderTD (token) {

if (pickerApiLoaded && token) {
// show all file types
var docsView = new google.picker.DocsView (google.picker.ViewId.DOCS)
// with associated folders
.setIncludeFolders (true)
.setMode (google.picker.DocsViewMode.LIST) - Does not work for TD in list mode!
// See team drives
.setEnableTeamDrives (true);


var picker = new google.picker.PickerBuilder ()
.addView (docsView)
.setLocale ('fr')
.enableFeature (google.picker.Feature.SUPPORT_TEAM_DRIVES)
.enableFeature (google.picker.Feature.NAV_HIDDEN)
.setTitle ('Select file (s)')
.setOAuthToken (token)
.setDeveloperKey (DEVELOPER_KEY)
.setCallback (pickerCallback)
.setOrigin (google.script.host.origin)
.setSize (DIALOG_DIMENSIONS.width - 2, DIALOG_DIMENSIONS.height - 2)
.build ();
picker.setVisible (true);
} else {
showError ('Unable to load the file picker.');
}

} // function OpenFolderTD () {

标签: javascriptgoogle-chromegoogle-apps-scriptpickergoogle-picker

解决方案


您需要使用PickerBuilder - 否则您很可能无法Feature.SUPPORT_TEAM_DRIVES为该选择器启用...

var picker = new google.picker.PickerBuilder()
    .addView(google.picker.ViewId.DOCS)
    .setOAuthToken(oauthToken)
    .setDeveloperKey(developerKey)
    .setCallback(pickerCallback)

    /* this is not supported by the default pickers: */
    .enableFeature(Feature.SUPPORT_TEAM_DRIVES)

    .build();

因为文档显示...

DocsView.setEnableTeamDrives(布尔值)

显示团队云端硬盘及其包含的文件。

注意:启用此功能时需要启用 Feature.SUPPORT_TEAM_DRIVES。


推荐阅读