AgGrid "serverSide" rowModel не распознает пользовательские компоненты наложения (загрузка и noRows) - PullRequest
0 голосов
/ 23 октября 2018

Проблема в том, что я не могу заставить ag-grid-реагировать на автоматическое отображение пользовательских компонентов для loadOverlay и noRowsOverlay (то есть, под управлением самой сетки).Я сделал все как описано в документации.

Вот мои варианты:

frameworkComponents={{
    customOverlayLoading: CustomOverlayLoading,
    customOverlayNoRows: CustomOverlayNoRows,
}}
loadingOverlayComponent="customOverlayLoading"
noRowsOverlayComponent="customOverlayNoRows"

Интересно то, что это работает для модели строки "clientSide", например, при использовании prop rowData={undefined} - загрузка или rowData={[]} - noRows.

Но когда я заменяю rowData на rowModelType="serverSide", сетка не распознает новые компоненты для наложения.

В документах не упоминается, чтоэта вещь работает только с моделью строки clientSide.Поэтому я ожидаю, что это должно работать.Я могу заставить его работать через API сетки.Но я ожидаю, что эта функция должна автоматически обрабатывать загрузку и noRows для каждой из моделей строк.Проблема с использованием API заключается в том, что нет флага, указывающего, загружается он или нет.

есть воспроизведение стекаблица.Для проверки версии serverSide rowModel Enterprise необходима https://stackblitz.com/edit/ag-grid-ro-model?embed=1&file=index.js

1 Ответ

0 голосов
/ 01 января 2019

Когда вы используете rowModelType='serverSide', вам нужно вызвать overlays внутри getRows(), где вы реализуете datasource.

gridApi.showNoRowsOverlay(); // show NoRowsOverlay
params.successCallback([], 0); // Pass empty array, Zero for lastRow

Это будет работать.:)

...