Я новичок в угловомДвунаправленное связывание в директиве и контроллере
У меня есть директива и контроллер. Посмотрите в примере . Я хочу изменить значение флажка (true/false) при нажатии на текст, а также при нажатии на внешний div текст находится в контроллере.
Пример: https://jsfiddle.net/pdhm98s3/
HTML
<div ng-app="miniapp">
<div ng-controller="myController">
<add-checkbox></add-checkbox>
<div ng-click="changeCheckbox()">
Change Check Value
</div>
</div>
</div>
JS
var app = angular.module('miniapp', []);
app.directive("addCheckbox", function() {
return {
"restrict": "E",
"replace": true,
"scope": true,
"template": '<div><div class="checkContainer"><input type="checkbox" ng-model="checkboxChecked"></div><div>{{!!checkboxChecked}}</div></div>',
"link": function($scope, $elem, attrs) {
$elem.bind("click", function() {
$scope.checkboxChecked = !$scope.checkboxChecked;
})
}
}
})
app.controller("myController", function($scope) {
$scope.changeCheckbox = function() {
$scope.checkboxChecked = !$scope.checkboxChecked;
}
})
Еще одна вещь. При изменении флажка я хочу вызвать функцию контроллеров, как я могу это сделать? – Kenny
использовать '$ scope. $ Parent.changeCheckbox();' –
принять мой ответ, если он работает для вас :) –