Бесконечная нумерация прокрутки - PullRequest
0 голосов
/ 07 июня 2018

Я пытаюсь написать код, который позволит мне использовать библиотеку ag-Grid с методом бесконечной прокрутки .

Но я застрял с параметрами, чтобы правильнонастроить это поведение.

Допустим, например, что я хочу получать страницы с сервера по 20 элементов одновременно.Если я правильно понял API , то параметр, который позволяет мне установить размер страницы, равен cacheBlockSize.

На самом деле, каждый вызов метода, определенного в datasource спараметр getRows требует 20 строк за раз.

Но на начальном этапе, как я и ожидал, выполняется не один вызов, а несколько.Если вы не установите очень большое значение cacheBlockSize (например, 100 или более в приведенном ниже примере).И я не могу понять, является ли это поведение настраиваемым или нет (может быть с paginationPageSize ??).

Например.

с этими параметрами:

var gridOptions = {
  enableServerSideSorting: true,
  enableServerSideFilter: false,
  rowModelType: 'infinite',
  columnDefs: columnDefs,
  //paginationPageSize: 20,
  cacheBlockSize: 20,
  maxConcurrentDatasourceRequests: 1,
  infiniteInitialRowCount: 1
};

Как вы можете видеть здесь , в начале вместо одного вызова, который загружает 20 строк, делается 3, которые загружают всего 20 * 3 = 60 строк.

1 Ответ

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

Причина, по которой вы видите несколько запросов, заключается в том, что количество записей, отображаемых в сетке за раз, превышает размер страницы.

Скажем, у вас размер страницы 20 (т.е. за раз20 записей извлекаются с сервера) и из-за высоты сетки, если сетка может отображать более 20 записей, скажем, 30, то она будет получать следующий блок с сервера.

Проверьте пример в реальном времени: ag-grid: infinite-scroll-pagination-ag-grid-initial-page-size-Issue

<div id="myGrid" style="height: 300px;" class="ag-theme-balham"></div>

Здесь я установил высоту в таком видеТаким образом, сетка будет отображать только 9 записей и, следовательно, она не получила следующий блок с сервера.

Если вы постепенно увеличите высоту, вы заметите больше запросов.

Это имеет смысл.Я прав?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...