我正在尝试使用ng-disabled属性创建按钮的指令 我正在尝试将ng-disabled状态绑定到我的范围内的变量。
这是HTML:
<div ng-controller="MyCtrl">
<btn dis="disableBtn"></btn>
</div>
这是JS:
angular.module('myApp')
.directive('btn', function() {
return {
restrict: 'E',
scope: {
dis: "@"
},
template: '<button ng-disabled="dis">click</button>',
link: function($scope) {
setInterval(function() {
console.warn($scope.disableBtn);
$scope.disableBtn = !$scope.disableBtn;
}, 100);
}
};
});
奇怪的是 - 我在控制台中看到$scope.disableBtn
的值更改了,但按钮禁用状态却没有。
谢谢!
答案 0 :(得分:0)
ng-disabled需要一个表达式,但由于您将“dis”绑定为文字值(使用“@”),因此无法正确计算。你应该使用
scope: {
dis: "="
},
正确绑定布尔值。