요소 지시문과 동일한 방식으로 수행합니다. 당신은 그것들을 attrs 객체에 넣을 것이고, 내 샘플에는 격리 범위를 통한 양방향 바인딩이 있지만 필수는 아닙니다. 격리 된 범위를 사용하는 경우에는 scope.$eval(attrs.sample)
단순히 scope.sample을 사용하여 속성에 액세스 할 수 있지만 상황에 따라 연결시 정의되지 않을 수 있습니다.
app.directive('sample', function () {
return {
restrict: 'A',
scope: {
'sample' : '=',
'another' : '='
},
link: function (scope, element, attrs) {
console.log(attrs);
scope.$watch('sample', function (newVal) {
console.log('sample', newVal);
});
scope.$watch('another', function (newVal) {
console.log('another', newVal);
});
}
};
});
사용 :
<input type="text" ng-model="name" placeholder="Enter a name here">
<input type="text" ng-model="something" placeholder="Enter something here">
<div sample="name" another="something"></div>
scope: false
), 새 범위 (일반 프로토 타입 상속 사용, 즉,scope: true
) 및 격리 범위 (예 :)scope: { ... }
입니다. 디렉티브는 어떤 유형의 범위를 생성합니까?