Google Picker没有显示文件

时间:2017-01-23 19:15:13

标签: google-api google-picker

这是我的代码:

var docParent = "XXXXXXXXXXXXXXXXXXX";
var docsView = new google.picker.DocsView(google.picker.ViewId.FOLDERS);
        docsView.setParent(docParent);
var picker = new google.picker.PickerBuilder().
            addView(docsView).
            setOAuthToken(oauthToken).
            setDeveloperKey(developerKey).
            setCallback(pickerCallback).
            //setOrigin('http://localhost:61003').
            build();
        picker.setVisible(true);

我想设置一个可能包含"子文件夹的默认文件夹"然后在其中选择一个文件。 它工作正常,但几个月后它只显示文件夹,但不显示其中的文件。因此,我尝试更改addViewGroup的addView并添加FOLDERS和DOCS,但它也无法正常工作。文件夹工作总是很好,但是当我选择子文件夹时,它会显示"此文件夹上没有项目"。

你能帮帮我吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

我能够在一个视图中获取文件夹和文件。添加此视图

addView(new google.picker.DocsView().setParent('root').setIncludeFolders(true))

答案 1 :(得分:0)

您收到“此文件夹中没有项目”,因为您使用

指示了严格的FOLDER视图
var docsView = new google.picker.DocsView(google.picker.ViewId.FOLDERS);

现在我不确定Picker API是否支持“在文件夹内查看文件”功能,因为我还没有找到办法。但是,使用

 var view = new google.picker.View(google.picker.ViewId.DOCS);

可让您查看云端硬盘中的所有文件,包括子文件夹中的文件。

 function createPicker() {
        var view = new google.picker.View(google.picker.ViewId.DOCS);
        var picker = new google.picker.PickerBuilder().
            addView(view).
            setAppId(appId).
            setOAuthToken(oauthToken).
            setCallback(pickerCallback).
            build();
        picker.setVisible(true);
    }