Выберите папку с помощью Google Picker

Я использую плагин Google Picker для Google Drive. Моя идея состоит в том, чтобы выбрать только папки и получить его идентификатор.

В настоящее время не позволяют мне выбрать их, теперь только войти в этот каталог. Я использую этот код:

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

Как я могу получить выбранную папку, не входя в нее?

Большое спасибо заранее и поздравления.

2 ответа

Решение

Я считаю, что с 15 января 2014 года сборщик требует, чтобы был установлен OAuthtoken, т.е. вам нужно включить " setOAuthToken(oauthToken)". в вашем PickerBuilder

Я решил проблему, это новый код:

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

Спасибо за помощь и поздравления!

Другие вопросы по тегам