gpt4 book ai didi

javascript - AngularJS/使用自定义方法替换 ng-click 和 ng-show 中的排序

转载 作者:行者123 更新时间:2023-12-03 01:00:07 24 4
gpt4 key购买 nike

我有一组表格列。每列都可以直接或反向排序。到目前为止,我们在每个 ng-clickng-show 中进行排序,如下所示:

HTML

<a style="color:black" href="" ng-click="sortReverse = !sortReverse; changeSortType('id')">
Group id
<span ng-show="sortType == 'id' && !sortReverse" class="fa fa-caret-down"></span>
<span ng-show="sortType == 'id' && sortReverse" class="fa fa-caret-up"></span>
</a></th>

Controller

  $scope.sortType = 'count';
$scope.sortReverse = true;

$scope.changeSortType = function (sortType){
$scope.sortType = sortType;
};

$scope.itemSortValue = function (item) {
return Service.sort(item, $scope.sortType)
};

现在我们想用一个方法来替换它,它的作用相同,这样我们就可以减少 HTML 中的代码量。

我不知道如何在AngularJS中准确地做到这一点。我做什么都行不通。我也看到了一些答案,但它们不起作用,或者我做错了什么。 您能帮我编写代码吗?

最佳答案

对于<a>元素删除sortReverse = !sortReverse;从 ng 单击并添加 $scope.sortReverse= !$scope.sortReverse它位于方法changeSortType的第一行;

以及 ng-show 创建和方法

$scope.myMethod = function (id, reverse){
return id && reverse;
};

并将 html 更改为

 <span ng-show="myMethod('id',!sortReverse)" class="fa fa-caret-down"></span>
<span ng-show="myMethod('id',sortReverse)" class="fa fa-caret-up"></span>

关于javascript - AngularJS/使用自定义方法替换 ng-click 和 ng-show 中的排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52659160/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com