У меня есть два элемента управления, отображаемых в каждом ng-повторе, один из которых - это раскрывающийся список для выбора типа адреса, а второй - вход с пользовательской директивой.AngularJS access ngrepeat child scope variable в директиве
Я хочу получить доступ к выбранному значению в первом элементе управления (установленном в переменной aFlag) в директиве второго элемента управления. Я думаю, что aFlag - это переменная области видимости, но я не могу получить дочернюю область в функции toggleAFlag(), чтобы установить для нее флаг, а также как получить доступ к этому флагу в директиве.
Ниже мой HTML-код
<div ng-app="myapp">
<div ng-controller="AppCtrl">
<div ng-repeat="item in itemList">
<div>
<select ng-options="addressType.name for addressType in item.addressTypes" ng-model="addressType"
ng-change="toggleAFlag(addressType)" >
</select>
</div>
<div> <input type="text" ng-model="value" my-directive></input></div>
</div>
</div>
</div>
Javascript
function AppCtrl(){
$scope.toggleAFlag = function(addressType) {
if (addressType == 'Business')
$scope.AFlag = true;
else {
$scope.AFlag = false;
}
};
}
var myapp = angular.module('myapp',[]);
myapp.directive('myDirective', function(){
return {
require: '?ngModel',
link: function(scope, element, attrs, model){
if (scope.AFlag == true){
//do something on element variable
}
}
};
});
Использование $ родителем. перед переменными, которые находятся в дочерних областях из повторений. Например scope. $ Parent.AFlag –