在 ng-repeat 内部比较两个不同对象是否相等的最佳方法是什么,为什么 angular.equals 在这里对我不起作用:
<tr ng-repeat="row in ctrl.filteredItems" ng-class="{'active':angular.equals(row,ctrl.ngModel), 'focus': angular.equals(row,ctrl.focusedRow)}">
<td ng-repeat="value in ctrl.sort(row) track by $index" class="text-center">
{{value}}
</td>
</tr>
如果当前行和来自 Controller 的预选行匹配,我想添加事件类。
最佳答案
在 JS 中编写一个函数,该函数将执行 angular.equals(obj1, obj2) 并使用该函数检查它是否处于事件状态?
HTML
<tr ng-repeat="row in ctrl.filteredItems" ng-class="{'active': checkEqualiy(row, ctrl.ngModel), 'focus': checkEquality(row,ctrl.focusedRow)}">
<td ng-repeat="value in ctrl.sort(row) track by $index" class="text-center">
{{value}}
</td>
</tr>
JS
$scope.checkEquality= function(param1, param2){
return angular.equals(param1, param2)
}
关于javascript - 如何比较 ng-repeat 中的两个不同对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36296147/