我有一个标记按钮,当用户单击时,标记讨论,然后标记按钮被替换为“成功标记”文本。目前,我在单击标志按钮后无法禁用 ng-click。ng-click 仍然存在文本“已成功标记”,我想阻止单击此文本以防止在标记相同讨论时出错。
html:
<div ng-if="canFlag(discussion)">
<div ng-switch="isFlagging"
ng-disabled="button_clicked"
ng-click="do_something()"
id="flag{{discussion.id}}"
title="{{'flag as inappropriate'}}"
robo-confirm="{'Are you sure you want to flag this?'}"
class="feedActionBtn">
<i ng-switch-when="false"
class="icon-flag"></i>
<div ng-switch-when="true"
translate translate-comment="success message">
Successfully flagged</div>
</div>
</div>
js:
$scope.isFlagging = false;
$scope.button_clicked = false;
$scope.do_something = function() {
$scope.button_clicked = true;
this.isFlagging = true;
}
通过添加惰性评估或阻止传播,我可能能够阻止调用 do_something() 方法,但我也希望让鼠标光标保持指针而不更改为“单击链接”鼠标图标,这可能吗?看起来鼠标按钮图像是我修复的 CSS 问题
我也尝试将 ng-click 添加到 ng-switch-when 语句中,如下所示,但是单击后,isFlagging 仍然为 false,并且我没有得到成功文本:
<div ng-switch-when="false"
ng-click="do_something()"
id="flag{{discussion.id}}"
title="{{'flag as inappropriate'}}"
robo-confirm="{'Are you sure you want to flag this?'}"
class="feedActionBtn">
<i class="icon-flag"></i>
</div>