Google File Pick Недавняя вкладка - PullRequest
0 голосов
/ 16 мая 2018

В моем веб-приложении есть элемент выбора дисков Google. Глядя на Google Docs, я обнаружил, что на ней отображается одна вкладка с опциями "Недавние".

Следуя документации на https://developers.google.com/picker/docs/reference Я не смог найти никакой ссылки на этот режим вкладок, нашел только «Недавно выбранные» для файлов, которые я недавно выбрал из средства выбора, но я пытаюсь эмулировать эту функцию.

Мой текущий код

new google.picker.PickerBuilder()
        .enableFeature(google.picker.Feature.MULTISELECT_ENABLED)
        .enableFeature(google.picker.Feature.SUPPORT_TEAM_DRIVES)
        .setAppId(appId)
        .setOAuthToken(oauthToken)
        .addView(new google.picker.DocsView().setIncludeFolders(true).setOwnedByMe(true))
        .addView(new google.picker.DocsView().setIncludeFolders(true).setOwnedByMe(false))
        .addView(new google.picker.DocsView().setStarred(true).setLabel('Starred'))

1 Ответ

0 голосов
/ 18 мая 2018

наконец, после прочтения документации средства выбора Google и групп Google, посвященных ему, я обнаружил, что нет предустановки или конфигурации для последних загруженных файлов, и даже попытался создать пользовательское представление с помощью google.picker.view, запросполе довольно ограничено и не позволяет сортировать файлы.

После прочтения javascript-кода docs.google.com для средства выбора файлов я нашел несколько переменных, которые доступны в момент вызоваметод .addView ().Это поле:

  1. El: тип фильтра для типа документа.
  2. mc: это старая конфигурация и поля всего представления.Пример: mc.query эквивалентен для View.setQuery.
  3. xd: это поле управляет заголовком представления в заголовке верхней навигационной вкладки.

Хотя этот метод немного хакерский, это единственная возможность, которую я получил в то же время, чтобы скопировать «недавнюю» вкладку представления из документов Google.Вот код, который я использовал:

let recentView = new google.picker.DocsView();

recentView.xd = 'Recent';
recentView.mc.sortKey = 15;

let picker = new google.picker.PickerBuilder()
.enableFeature(google.picker.Feature.MULTISELECT_ENABLED)
.enableFeature(google.picker.Feature.SUPPORT_TEAM_DRIVES)
.setAppId(appId)
.setOAuthToken(oauthToken)
.addView(new google.picker.DocsView().setIncludeFolders(true).setOwnedByMe(true))
.addView(new google.picker.DocsView().setIncludeFolders(true).setOwnedByMe(false))
.addView(new google.picker.DocsView().setIncludeFolders(true).setStarred(true).setLabel('Starred'))
.addView(recentView)
.addView(new google.picker.DocsUploadView().setIncludeFolders(true))
.setDeveloperKey(developerKey)
.setCallback(onFilePickerCB)
...