Google云端硬盘选取器 - 选择要上传的文件夹 [英] Google Drive Picker - select folders to upload

查看:147
本文介绍了Google云端硬盘选取器 - 选择要上传的文件夹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  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);
$ b 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 ,但仍然在选择文件夹表单选取器视图后,底部的选择按钮仍处于禁用状态。我需要在回调文件夹Id进一步处理。但是我无法弄清即使选择了文件夹,如何启用按钮。

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

解决方案

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

  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);


I have my picker code as follows:

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);

I have added the view to enable "setSelectFolderEnabled" but still after selecting the folder form Picker View, the "Select" button in the bottom remains disabled. I need the folder Id in callback for further processing. But I am unable to figure out how to enable the button even if a folder is selected.

Does Google Picker API only allow to select files saved in Google Drive ??

解决方案

Just changed my code to this and it works :

 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);

这篇关于Google云端硬盘选取器 - 选择要上传的文件夹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆