javascript - 如果 ng-repeat 和 ng-if 返回 null,则显示 div

标签 javascript html angularjs ionic-framework

当 ng-repeat 返回 null 时,我想显示一个包含一些消息的 div。我的 ng-repeat 附带了一个 ng-if,用于简单过滤 json。

这是我的 HTML

    <ion-list>
      <ion-item class="item-remove-animate" ng-repeat="uit in useritems" 
      ng-if="uit.catid == categoryI" type="item-text-wrap" >
        <h2>{{uit.user}}</h2>
        <p>{{uit.pass}}</p>
        <ion-option-button class="button-assertive" ng-click="remove(uit.uniqueid)">
          Delete
        </ion-option-button>
      </ion-item>
    </ion-list>

    <!-- DIV to show message -->
    <div class="someclass">
      SOME MSG
    </div>
    <!-- DIV to show message -->

最佳答案

首先,我建议您使用自定义指令

<ion-item class="item-remove-animate" ng-repeat="uit in useritemsFiltered = (useritems | filter:customFilter)"  type="item-text-wrap" >
    <h2>{{uit.user}}</h2>
    <p>{{uit.pass}}</p>
    <ion-option-button class="button-assertive" ng-click="remove(uit.uniqueid)">
      Delete
    </ion-option-button>
</ion-item>

您的指令应如下所示:

var someApp=angular.module('someApp', []);
someApp.filter('customFilter', function() {
      return function(input, uppercase) {
         var out = [];
         for (var i = 0; i < input.length; i++) {
          if(input[i].catid == categoryI){
              out.push(input[i]);
          }
        }
        return out;
      }
});
<div class="someclass" ng-show="!useritemsFiltered.length">
   SOME MSG
</div>

关于javascript - 如果 ng-repeat 和 ng-if 返回 null,则显示 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41535966/

相关文章:

javascript - 从嵌入的 IFRAME 内的嵌入 IFRAME 转到主浏览器窗口

javascript - 从 ngResource 查询中的 PUT 请求中删除正文

javascript在事件监听器中更改html

javascript - 使用 D3 选择函数在 HTML 布局中正确对齐 SVG

javascript - 访问 ng-repeat 的项目范围

javascript - $watch 在 AngularJS 中发生了意外的多个事件?

javascript - 将值格式化为千和百万

javascript - 访问对象字面量两项数组的外部名称

javascript - jQuery 不是带有 [name] 选择器的选择器

asp.net - IE9背景图片边框轮廓(去除)