Я работаю с угловым и пытаюсь отключить кнопку, если значение из моей области действия "истинно". Я видел ng-disabled
который кажется идеальным, но я не знаю, почему он не работает...
Вот мой HTML:
<div ng-controller="MyCtrl">
<h4>{{ building.isBuildable }}</h4>
<button ng-click='build(building.id)'
class="btn btn-primary"
ng-disabled="!build.isBuildable">
Build
</button>
</div>
И мой угловой:
var myApp = angular.module('myApp',[]);
myApp.factory('Colony', function () {
'use strict';
return {
isBuildable: function () {
return true;
//return false;
}
};
});
myApp.controller('MyCtrl', ['$scope', 'Colony', function ($scope, Colony) {
'use strict';
var building = {
name: 'Building Name',
isBuildable: null
};
$scope.building = building;
$scope.building.isBuildable = Colony.isBuildable();
$scope.build = function (id) {
};
}]);
http://jsfiddle.net/xz7arL0s/1/
Как вы можете видеть в jsfiddle, он всегда отключается, даже если isBuildable
истинно. Что мне здесь не хватает?
У вас есть опечатка, вы имеете в виду сборку вместо создания в привязке ng-disabled
.
Обновите свой код до:
<div ng-controller="MyCtrl">
<h4>{{ building.isBuildable }}</h4>
<button ng-click='build(building.id)'
class="btn btn-primary"
ng-disabled="!building.isBuildable">
Build
</button>
</div>
Я отредактировал это также на Fiddle.