javascript - 如何比较 ng-repeat 中的两个不同对象

标签 javascript angularjs angularjs-directive angularjs-ng-repeat

在 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/

相关文章:

javascript - 如何在 VueJS 中使类的 "virtual"getter 响应式

javascript - ng-click 不打开新窗口

angularjs - 如何捕获无效的 URL?

javascript - Angularjs - ng-map - Google Maps Javascript API v3 - 如何为多个标记设置最佳缩放

javascript - Angularjs - ng-init 函数完成后调用指令

javascript - js 中的 elem.offsetParent

javascript - 使用indexOf循环删除html实体

javascript - 新页面组件上的 ionic radio 组

javascript - 在 AngularJS 指令中创建条件模板项时遇到问题

javascript - 粘性表头