如何使用ng-class比较自我调用的值

时间:2016-09-17 14:32:42

标签: javascript css angularjs

如果条件totalAsset和sortedAsset相同,我一直在使用此标记来更改我的CSS样式

<div class="table-row" ng-repeat="x in myData" 
ng-model="sort(x.totalAsset)" 
ng-class="{'lightblue': x.totalAsset == sortedAsset}">

totalAsset是我的数据

$scope.myData = [
{
totalAsset: "23557"
},
{
totalAsset: "4512190",   
},
{
totalAsset: "2190",   
},
{
totalAsset: "1256790",   
}
]

我创建了一个自我排序totalAsset

的函数
$scope.sort = function(totalAsset) {

$scope.unsortedAsset = totalAsset;
$scope.sortedAsset = $scope.unsortedAsset.split("").sort().join("");
console.log(sortedAsset);
}

在逻辑中只有第一行和最后一行变为蓝色,其他两行保持相同。

但我的问题只是最后一个变为蓝色,第一个没有。

1 个答案:

答案 0 :(得分:0)

我不确定,如果你需要{{}}(至少在ng2中不需要它们。)

<div class="table-row" ng-repeat="x in myData" 
ng-model="sort(x.totalAsset)" 
ng-class="x.totalAsset == sortedAsset ? 'lightblue' : ''">

第二种方法是在控制器中执行if函数

$scope.areValuesEqual() {
if($scope.x.totalAssets == $scope.sortedAssets) {
return 'lightblue';
}

return; 
}

但这看起来相当丑陋,但我只是把它扔到那里。