点击按钮时调用将返回整数值的服务方法。 现在我需要的是,在页面加载时我应该禁用此按钮,如果此整数值为0。 我不想使用ng-disabled,因为它会继续调用该服务方法。 有更好的方法吗?
答案 0 :(得分:1)
我不知道我的问题是否正确,但这是我在plunker中所做的事情
<!DOCTYPE html>
<html ng-app="sample">
<head>
<script data-require="angular.js@*" data-semver="1.4.0-beta.5" src="https://code.angularjs.org/1.4.0-beta.5/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<script>
var module = angular.module("sample", []);
module.controller('ctrl', function($scope) {
//assuming that this variable came from your service
var i = 0;
$scope.disable = true;
$scope.init = function() {
$scope.disable = i === 0 ? true : false;
}
});
</script>
<body ng-controller="ctrl" ng-init="init()">
<button ng-disabled="disable">hello world</button>
</body>
</html>
http://plnkr.co/edit/p9qZGcO1znOiDidecFYd
但基本上你真的需要使用ng-disabled并调用ng-init函数,这样当你的页面加载时,它会检查整数的值是否为0然后标记要禁用的按钮。