0

我的选择器代码如下:

var mimetypes = "application/vnd.ms-excel," +
                        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet," +
                        "application/vnd.google-apps.spreadsheet," +
                        "application/vnd.ms-powerpoint," +
                        "application/vnd.openxmlformats-officedocument.presentationml.presentation," +
                        "application/vnd.google-apps.presentation," +
                        "application/vnd.openxmlformats-officedocument.wordprocessingml.document," +
                        "application/msword," +
                        "application/vnd.google-apps.document," +
                        "application/pdf,"+
                        "application/vnd.google-apps.folder";
          var view = new google.picker.View(google.picker.ViewId.DOCS);
          view.setMimeTypes(mimetypes);

         var docsView = new google.picker.DocsView()
          .setIncludeFolders(true) 
          .setMimeTypes('application/vnd.google-apps.folder')
          .setSelectFolderEnabled(true);

       var folderView = new google.picker.View(google.picker.ViewId.FODLERS);
       folderView.setMimeTypes("application/vnd.google-apps.folder");

          var picker = new google.picker.PickerBuilder()
              .enableFeature(google.picker.Feature.MINE_ONLY)
              .enableFeature(google.picker.Feature.NAV_HIDDEN)
              .setAppId(appId)
              .setOAuthToken(oauthToken)
              .addView(view)
              .addView(docsView)
              .addView(folderView)
              .addView(new google.picker.DocsUploadView())
              .setSelectableMimeTypes(mimetypes)
              .setDeveloperKey(developerKey)
              .setCallback(pickerCallback)
              .build();
           picker.setVisible(true);

我添加了启用“ setSelectFolderEnabled ” 的视图,但在选择文件夹表单 Picker View 后,底部的“选择”按钮仍处于禁用状态。我需要回调中的文件夹 ID 以进行进一步处理。但即使选择了一个文件夹,我也无法弄清楚如何启用该按钮。

Google Picker API 是否只允许选择保存在 Google Drive 中的文件?

在此处输入图像描述

4

2 回答 2

4

只是将我的代码更改为此并且它可以工作:

 var docsView = new google.picker.DocsView().
                                 setIncludeFolders(true).
                                 setSelectFolderEnabled(true);
          var picker = new google.picker.PickerBuilder()
              .enableFeature(google.picker.Feature.MINE_ONLY)
              .enableFeature(google.picker.Feature.NAV_HIDDEN)
              .setAppId(appId)
              .setOAuthToken(oauthToken)
              .setDeveloperKey(developerKey)
              .addView(docsView)
              .setCallback(pickerCallback)
              .build();
          picker.setVisible(true);
于 2016-02-18T09:44:39.703 回答
0

尝试将google.picker.​ViewId.FOLDERSviewId 添加到addView. 我认为您无法选择文件夹,因为它未在PickerView.Builder. 有关视图描述的更多信息,请参阅显示 Picker API 文档的不同视图

之后,确定您是否有可将文件上传到云端硬盘的写入范围。

于 2016-02-17T02:00:51.260 回答