ng class 不适用于此条件

ng class is not applied in this condition

我有 3 个循环

1-获取星期几的名称 2-获取当天的数字 1和2来自js函数。

JavaScript

var DAYS = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
        $scope.rangetxt = [];
        var d1 = new Date(fromdate);
        while (d1 <= new Date(todate)) {
            //alert(DAYS[d.getDay()]);
            $scope.rangetxt.push({ Day: DAYS[d1.getDay()] });
            //console.log($scope.rangetxt);
            d1 = new Date(d1.getTime() + (24 * 60 * 60 * 1000));
        }
        $scope.dateArray = [];
        var currentDate = moment(fromdate);
        var stopDate = moment(todate);
        while (currentDate <= stopDate) {
            $scope.dateArray.push({ Day: moment(currentDate).format('DD') })
            currentDate = moment(currentDate).add(1, 'days');
        }

HTML

<td class="employeedata">
                                        <table class="table table-bordered table-hover myTable" style="font-size: 10px;" id="table2">
                                            <thead>
                                                <tr>
                                                    <th rowspan="3">Type</th>
                                                </tr>
                                                <tr>
                                                    <!--<th rowspan="2">Type</th>-->
                                                    <th ng-repeat="r in rangetxt">{{r.Day}}</th>

                                                    <!--<th rowspan="3"></th>-->

                                                </tr>
                                                <tr>
                                                    <th ng-repeat="dt in dateArray">{{dt.Day}}</th>
                                                </tr>
                                            </thead>
                                            <tbody>
                                                <tr ng-repeat="df in duration | filter : du.StaffKey | limitTo:3 ">


                                                    <td>{{df.TypeTransDesc}}</td>

                                                    <td ng-repeat="x in dateArray " >

                                                        <span ng-repeat="(key,value) in df" ng-if="key=='D'+x.Day" **ng-class="{{df.['C'+x.Day]}}">**

                                                            {{value}}



                                                        </span>




                                                    </td>


                                                </tr>

                                            </tbody>
                                        </table>
                                    </td>

我已成功显示其单元格内的数据,但我无法应用 class, 我有 6 classes ,我想根据条件应用它们 不知道为什么以及如何 任何想法,提前致谢

您可以从控制器获取 class 名称,在控制器上创建一个函数并从 html 调用它: html:

ng-class="getDfClass(df, x.day)"

在控制器中:

getDfClass(df, day) {
  return df['C'+day];
}

这假定 df['C'+x.Day] 的结果是一个字符串,其中包含您要应用到跨度

的 class 的名称