Каков наилучший способ для Paginate списков файлов Forge / BIM360 Docs? - PullRequest
0 голосов
/ 11 июня 2018

В настоящее время я выполняю функции разбивки на страницы, сортировки и поиска в представлениях файлов / планов / листов проекта интеграции BIM 360 Docs.

Так как я не смог найти никаких рекомендаций относительно этих функций, я подумал, что смогу протянуть руку, чтобы не застревать, изобретая велосипед заново.

Справочная информация:

В большинстве реализаций используется https://github.com/Autodesk-Forge/forge-api-dotnet-client/ SDK.

Основываясь на том, что я видел, разбивка на страницы в Autodesk API очень проста и плохо работает с отфильтрованными представлениями.Пожалуйста, исправьте меня, если я ошибаюсь, но похоже, что нет способа получить количество элементов в представлении и / или рассчитать общее количество страниц в наборе результатов.

Если использовать фильтрацию для ограничения типовЭлементы, возвращаемые API (например, документы, листы, файлы проекта), API сначала применяет разбивку на страницы и затем фильтры.Это приводит к появлению дыр в возвращаемых наборах результатов, например, можно было бы запросить страницу 1 размером 5 элементов и получить обратно 3 элемента, затем запросить страницу 2 аналогичного размера и не получить элементов назад, а затем страница 3 выдаст 2 элемента.

Вышеупомянутые проблемы вынуждают нас использовать динамическую ленивую загрузку, аналогично тому, как это делается в настоящее время в интерфейсе пользователя BIM360 Docs.

Вопрос:

Есть ли другой, лучший способ разбить на страницы?Или мы должны лениво загружать результаты при прокрутке, не зная, сколько записей вернет следующая страница?

1 Ответ

0 голосов
/ 11 июня 2018

К сожалению, пока нет нумерации страниц для API Forge MD BIM360, насколько я знаю.Приносим извинения за причиненные неудобства.

Однако он был зарегистрирован как идентификатор запроса FDM-1769 несколько дней назад.Я видел ваше имя в списке запросов.Поэтому я думаю, что это будет поддерживаться в будущем.Кроме того, обходной путь заключается в получении всех данных из API, а затем разбивке на страницы на стороне клиента через Javascript.

...