即使条件值发生变化,使用 ng-disabled 按钮仍然被禁用

Using ng-disabled button is still disabled even if value in condition changes

我有一个按钮:

<button ng-disabled="ctrl.myService.getData().someProperty ? '' : 'disabled'">
  Click me!
</button>

应用程序加载时 somePropertyctrl.myService.getData() 上不存在。所以按钮被禁用了。

但是几秒钟后 someProperty 被设置为 ctrl.myService.getData() 但我的按钮仍然被禁用.. 知道为什么它不启用基于新 属性 的按钮吗?

应该是这样的:

在你的控制器中:

     <script>
        app.controller("myCtrl", function($scope) {

           $scope.is_disabled = ctrl.myService.getData().someProperty;
        });
     </script>

在Html中:

    <button ng-disabled="is_disabled ? false : true">
      Click me!
    </button>

另外一定要在方法执行结束时调用 $scope.apply() 以便应用必要的更改