Подтвердить что ты не робот

AngularJS ui-grid- Чтобы показать "Нет данных", когда ответ содержит пустой массив

Я хочу показать ' Отсутствие данных' в ui-Grid 3.0, если ответ от ajax содержит пустой массив данных json i.e.;

data = {"data": []};

А теперь, если я сделаю -

$scope.gridOptions.data = data.data;

'Доступные данные не должны быть в ui-Grid.

В настоящее время происходит то, что пользователь получает пустой экран, если данные пустые.

Также как сделать его как функцию по умолчанию?

Смотрите plunker здесь.

4b9b3361

Ответ 1

Вы можете использовать "водяной знак" (plunker) (обновленный плункер)

шаблон

  <div ui-grid="gridOptions" ui-grid-selection ui-grid-exporter class="grid">
    <div class="watermark" ng-show="!gridOptions.data.length">No data available</div>
  </div>

CSS

.watermark {
    position: absolute;
    top : 80px;
    opacity: 0.25;
    font-size: 3em;
    width: 100%;
    text-align: center;
    z-index: 1000;
}

Edit:

чтобы сделать .watermark независимым от определенного размера родителя:

.watermark {
    position: absolute;
    top: 50%;                    <---- Center vertically in the parent element,
    transform: translateY(-50%); <---- it works for any parent height
    opacity: 0.25;
    font-size: 3em;
    width: 100%;
    text-align: center;
    z-index: 1000;
}