ng上的Angularjs谓词如果不起作用
我正在尝试使用谓词函数为AngularJS应用程序实现排序。这是我的密码ng上的Angularjs谓词如果不起作用,angularjs,Angularjs,我正在尝试使用谓词函数为AngularJS应用程序实现排序。这是我的密码 <td> <a href="" ng-click="predicate = 'date'; reverse=!reverse"> Time <span ng-show="predicate == 'date'"> <span ng-show="!reverse"> <img
<td>
<a href="" ng-click="predicate = 'date'; reverse=!reverse">
Time
<span ng-show="predicate == 'date'">
<span ng-show="!reverse">
<img src="img/ascending.gif">
</span>
<span ng-show="reverse">
<img src="img/descending.gif">
</span>
</span>
</a>
</td>
<td ng-if="SId==2">
<a href="" ng-click="predicate = 'name'; reverse=!reverse">
Name
<span ng-show="predicate == 'name'">
<span ng-show="!reverse">
<img src="img/ascending.gif">
</span>
<span ng-show="reverse">
<img src="img/descending.gif">
</span>
</span>
</a>
</td>
<td ng-if="SId==2">
<a href="" ng-click="predicate = 'rno'; reverse=!reverse">
RNO
<span ng-show="predicate == 'rno'">
<span ng-show="!reverse">
<img src="img/ascending.gif">
</span>
<span ng-show="reverse">
<img src="img/descending.gif">
</span>
</span>
</a>
</td>
<td ng-if="SId==1">
<a href="" ng-click="predicate = 'phoneNumber'; reverse=!reverse">
Phone Number
<span ng-show="predicate == 'phoneNumber'">
<span ng-show="!reverse">
<img src="img/ascending.gif">
</span>
<span ng-show="reverse">
<img src="img/descending.gif">
</span>
</span>
</a>
</td>
我有两个仪表板,它们使用相同的HTML页面。但是列名是不同的。因此,列名是基于ng if条件显示的(SId=1是第一个仪表板,SId=2是第二个仪表板)。现在,两个仪表板中的列都显示正确。但是当我对列名进行排序时,如果条件不是排序,则具有ng的列有自己的范围。
ng if
。因此,当您在ng if中执行predicate='rno'
时,您是在ng if范围中创建predicate
属性,而不是修改控制器范围的谓词
使用函数设置谓词:
$scope.sortBy = function(property) {
$scope.predicate = property;
$scope.reverse = !$scope.reverse;
}
及
ng如果
有自己的范围。因此,当您在ng if中执行predicate='rno'
时,您是在ng if范围中创建predicate
属性,而不是修改控制器范围的谓词
使用函数设置谓词:
$scope.sortBy = function(property) {
$scope.predicate = property;
$scope.reverse = !$scope.reverse;
}
及
谢谢@JB Nizet。它起作用了。但是如何在这里添加图标没问题,我得到了答案。谢谢@JB Nizet。它起作用了。但是如何在这里添加图标没问题,我得到了答案。谢谢@JB Nizet。它起作用了。但是如何在这里添加图标没问题,我得到了答案。