选择带谷歌选取器的文件夹

use*_*850 3 javascript google-drive-api google-picker

我正在使用google插件Picker for Google Drive.我的想法是只选择文件夹并获取其ID.

目前不让我选择它们,现在只进入该目录.我正在使用此代码:

    function MenuCtrl($scope, $location, appId) {
    var onFilePicked = function (data) {
        $scope.$apply(function () {
            if (data.action == 'picked') {
                var id = data.docs[0].id;
                $location.path('/edit/' + id);
            }
        });
    };
    $scope.open = function () {
        var view = new google.picker.View(google.picker.ViewId.FOLDERS);
        view.setMimeTypes('application/vnd.google-apps.folder');

        var picker = new google.picker.PickerBuilder()
            .setAppId(appId)
            .addView(view)
            .setCallback(angular.bind(this, onFilePicked))
            .build();
        picker.setVisible(true);


    };
    $scope.create = function () {
        this.editor.create();
    };
    $scope.save = function () {
        this.editor.save(true);
    }
}
Run Code Online (Sandbox Code Playgroud)

如何在不进入内部的情况下获取所选文件夹?

非常感谢您提前和问候.

use*_*850 24

我解决了这个问题,这是新的代码:

$scope.open = function () {

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


        var picker = new google.picker.PickerBuilder()
          .addView(docsView)
          .setCallback(callback)
          .build();

        picker.setVisible(true);
});
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助和问候!


pin*_*yid 0

我相信从 2014 年 1 月 15 日起,Picker 要求设置 OAuthtoken,即。您需要包含“setOAuthToken(oauthToken)”。在你的 PickerBuilder 中

  • 喔好吧。DocsView.setSelectFolderEnabled(boolean) 来自 https://developers.google.com/picker/docs/reference (2认同)