Google Picker API 隐藏本机 Google Drive 工作区格式 代码:输出:注意:参考:

问题描述

在 Google Drive 中,用户可以创建新的 Google Doc/Sheet/Slide/Form 等作为 Drive 原生格式。使用 Drive Picker API 时有没有办法隐藏这些类型的文件?我希望用户只能看到他们上传(或与他们共享)而不是在云端硬盘中创建的文件

例如,如果我使用 ViewId.DOCUMENTS 向选择器添加一个视图,那么 Google Doc、txt 和 docx 中的所有内容都会显示出来。只是还没找到过滤掉 Google Doc mime 类型的方法

解决方法

您是否尝试过使用 setMimeTypes?使用它来指定要包含的格式。

代码:

var view = new google.picker.View(google.picker.ViewId.DOCS);
// include only txt and docx files 
view.setMimeTypes("text/plain,application/vnd.openxmlformats-officedocument.wordprocessingml.document");
var picker = new google.picker.PickerBuilder()
    .addView(view)

输出:

output

注意:

  • 驱动器选择器是为谷歌驱动器制作的。因此,只有 Views 支持其原生文件类型是很自然的。
  • 好处在于,Google 为我们提供了一种通过 setMimeTypes
  • 指定未包含在其视图中的文件类型的方法
  • 目前,我没有找到任何排除某种 mime 类型或视图的方法
  • 此外,您可以尝试setQuery。我对此进行了一些测试,似乎 view.setQuery("*.docx|*.txt") 会生成所有 docx 和 txt 文件(就我而言)。您可以将其与 setMimeTypes 结合或选择它。只需进行测试,看看哪种解决方案适合您。

参考: