gpt4 book ai didi

javascript - AngularJS $index 在 orderBy 之后工作不正常

转载 作者:行者123 更新时间:2023-11-30 12:04:21 24 4
gpt4 key购买 nike

在用户可以对项目进行投票的项目中工作,在 orderBy 之后,该函数仅适用于项目的原始索引。我想通过从数据库中提取的 ID 属性来跟踪项目,但遇到了问题。我也尝试过传递对象而不是它们的索引,但我还是无法理解它。

相关JS

angular.module("cardSite", ['masonry'])
.controller('mainCtrl', function($scope, dataService) {
$scope.cards = [];
dataService.getCards().then(function(response) {
$scope.cards = response.data;
}, function() {});

$scope.plusOne = function($index) {
$scope.cards[$index].card_rating += 1;
};
});

相关的 HTML

<div class="col-lg-3 tile grid-item" ng-repeat="card in cards | orderBy : '-card_rating' | limitTo:8 track by card.ID">
<div class="panel panel-default {{ card.card_category | lowercase }}_panel">
<p>Card ID: {{card.ID}}</p>
<!DOCTYPE svg>
<p ng-click="plusOne($index)"> Vote up</p>
<p>{{card.card_rating}}</p>
</div>

有人有什么建议吗?

最佳答案

为什么在这种情况下需要索引?

你可以直接传递对象:

<p ng-click="plusOne(card)"> Vote up</p>

并将您的功能更改为:

$scope.plusOne = function(card) {
card.card_rating += 1;
};

关于javascript - AngularJS $index 在 orderBy 之后工作不正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35652067/

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