我想在 ng-repeat 中使用 ng-disabled 禁用按钮。在这种情况下,我想为每个项目制作类似的按钮。
我想在 http 请求期间禁用按钮,直到它返回成功结果。如果我在 http 请求之前使用 $scope.btnLikeDisable = true ,它将阻止所有 Like 按钮。
这是代码。
<div ng-repeat="item in items">
<button class="button button-block icon ion-thumbsup"
ng-model="item.islike"
ng-class="item.islike== true?'button-on':'button-light'"
ng-click="changeLikeState(item.id, $index);"
ng-disabled="btnLikeDisable"> Like</button>
</div>
这是函数,当btnLikeDisable
在http之前设置为true,然后在http请求完成时设置为false
$scope.changeLikeState = function(itemid, index) {
$scope.btnLikeDisable = true;
$http.post(Url).then(function(data) {
}).catch(function(response) {
console.log(response.data.message);
}).finally(function($) {
$scope.btnLikeDisable = false;
});
}
如何实现这一点,使其不会禁用所有类似按钮?到目前为止,我计划添加ng-disabled="isDisable($index)"
,但我不确定它是如何isDisable($index)
工作的。