javascript - ng-repeat 中项目的长度 Angular

标签 javascript angularjs

首先,我有这张表:

enter image description here

您可以在 estado 列中看到不同的颜色。有4种不同的情况。我想统计一下不同的情况。例如,在本例中,有:事件(绿色):1,沃达丰(绿色+ Logo ):1,停用(红色):1,待定(橙色):1。但它可以根据情况而改变。

<div class="input-group">
                      <div>  <h>Instalaciones: {{filteredsites.length}}</h>  <h>Active: {{}}</h> <h>Vodafone: {{}}</h> <h>Desactive: {{}}</h> <h>Pending: {{}}</h></div>

                </div>
<div class="panel-body">
                <div class="row">
                    <div class="col-lg-3">
                        <div >
                            <table class="table table-bordered table-hover table-responsive table-striped dataTable no-footer" data-sort-name="name" data-sort-order="desc">
                                <tr role = "row" class="info text-center">
                                    <th ng-click="order('msisdn')">Número Teléfono</th>
                                    <th ng-click="order('icc')">ICC</th>

                                    <!--th>IMEI</th-->
                                    <th ng-click="order('ActivationStatus')">Estado</th>
                                    <th ng-click="order('sitename')">Instalación</th>
                                    <th ng-click="order('siteaddress')">Dirección</th>
                                    <th ng-click="order('sitecity')">Ciudad</th>
                                    <th ng-click="order('sitezip')">Código Postal</th>

                                    <th ng-click="order('phonedesc')">Modelo Teléfono</th>



                                </tr>


                                <tr class=" text-center" ng-repeat-start="object in filteredsites = (objects | filter:searchText | filter:{parentgroupid:selectedgroup||undefined}) | filter:tableFilter| orderBy:predicate:reverse" ng-click="showDetails = ! showDetails" >
                                    <td>{{object.msisdn}}</td>
                                    <td>{{object.icc}}</td>

                                    <!--td>{{object.ActivationStatus}}</td-->
                                    <td><span ng-init="getStatusCount(object.ActivationStatus)"  ng-show="object.ActivationStatus=='AC' && object.ContractingMode=='0'" class="fa fa-square fa-3x"style="color:lime"></span><span ng-show="object.ContractingMode=='2' && object.ActivationStatus=='AC'  "  ><img src="../img/Vodafone_logo.png" width="40" height="40" style="background-color: lime"></span><span ng-show="object.ActivationStatus=='PA'"  class="fa fa-square fa-3x"style="color:yellow"></span><span ng-show="object.ActivationStatus=='DE'" class="fa fa-square fa-3x"style="color:red"></span></td>
                                    <td>{{object.sitename}}</td>
                                    <td>{{object.siteaddress}}</td>
                                    <td>{{object.sitecity}}</td>
                                    <td>{{object.sitezip}}</td>
                                    <td><span ng-show="object.phonedesc==''"></span><span ng-show="object.phonedesc=='Desconocido'">Desconocido</span><span></span>{{getPhoneModel(object.phonedesc)}}</td>
                                </tr>

                           </table>
                        </div>
                        <!-- /.table-responsive -->




                    </div>
                    <!-- /.col-lg-4 (nested) -->

                    <!-- /.col-lg-8 (nested) -->
                </div>

Controller :

var app = angular.module('dashboard', ['ui.bootstrap']);

app.controller('dashboardController', function ($scope, $http, $modal) {
    $scope.objects = [];
    $scope.grupos = [];
    $scope.longitud = [];
    $scope.eventos = [];



    var URL = "/api/auth/logout";
    var URLOperation = "/api/sites";
    var URLModel = "http://localhost:81/api/phonelist/";
$scope.getStatusCount= function (status){
   // console.log(status);

    var active = 0;
    active++;
    console.log(active);
    angular.forEach(status ,function(obj) {
        if (obj.status == status) {
            console.log(obj.status);
            console.log(status);
            console.log(active);
            active++;
            console.log(active);
        } });


}


//Funci?n que devuelve las instalaciones de un usuario
    $http.get(URLOperation, $scope)
            .success(function (data) {
                var groups = data;
                angular.forEach(groups, function (group) {
                    var group2 = group;
                    angular.forEach(group2.sites, function (group3) {
                        $scope.longitud.push(group3);
                        $scope.objects.push(group3);
                        $scope.predicate = 'msisdn';
                        $scope.reverse = true;
                        $scope.order = function (predicate) {
                            $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
                            $scope.predicate = predicate;
                        };
                    })
                });
            })
            .error(function (data) {
                window.alert('Something Wrong...');
            });




});

如果有人可以帮助我计算不同的 ActivationStatus 案例,我将不胜感激。

最佳答案

你猜对了吗?我在 plunker 中研究了您的示例结果马上就成功了?

ng-show="object.ActivationStatus=='AC' && object.ContractingMode=='0'"

似乎为我工作。

关于javascript - ng-repeat 中项目的长度 Angular ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31049106/

相关文章:

javascript - Angular : always get popup blocker on create new tab after async call

angularjs - Angular UI 路由器 : Back-button not working for simple code

angularjs - ng-message 如何连接到模型,以及如何使用 ng-message 显示消息?

javascript - 使用 v-edit-dialog 时如何停止传播/打开 v-expansion-panel?

javascript - Meteor + Aldeed Autoform::如何传递父数据?

javascript - 如何在选项选择上使用 jquery 自动完成引起回发?

javascript - 使用 ng-controller 指令从 AngularJS 开始

javascript - 如何将 $stateParams 从 ui-router 传递到 resolve 服务?

javascript - 在 JavaScript 中访问外部作用域

javascript - 如何使用 javascript 在移动设备中实现滑动 View ?