保持复选框未选中,直到 onclick 函数 returns 为 AngularJS 为真

Keep checkbox unchecked until onclick function returns true with AngularJS

使用 AngularJS 框架,在我的 HTML 代码中我有这个复选框:

<input type="checkbox" ng-checked="switch.isOn()" ng-click="SwitchController.setValue()"> 

点击后,复选框 checked/unchecked 在 setValue 函数执行之前。如果 setValue() 函数 returns false

,我希望复选框不被选中

您可以将 ng-true-valueng-false-valueng-model 一起使用。 如果您从函数中得到假值,只需将 ng-model 设置为您在 ng-false-value 中指定的常量。 您也可以使用 ng-disabled 并在输入 SwitchController.setValue() 之后的持续时间内将其设置为真,并且相同的函数返回值以防止不必要的点击。 这不会完全延迟复选框的点击,但应该让你得到想要的最终结果。