지시문에 NG 반복 이외의 범위를 액세스하는 방법 :내가 각도 지침과 항목의 목록을
<li ng-repeat="x in topics">
<p change-content-on-click>{{ x.name }}</p>
</li>
app.directive('changeContentOnClick', function(TopicService) {
return{
restrict: 'A',
link: function(scope, element) {
element.bind('click', function(){
scope.message = "hello";
scope.$apply();
});
}
}
});
나는 클릭 된 항목으로 반복 밖에 {{ message }}
을 결합하기 만하면 무엇 목록에. 어떻게해야합니까? 나는 많은 문서를 조사했지만 찾지 못했습니다. 업데이트
$scope.message = {text:""};
app.directive('changeContentOnClick', function() {
return{
restrict: 'A',
scope: {
someAttr: "="
},
link: function(scope, element) {
element.bind('click', function(){
scope.message = "hello";
scope.someAttr.text = scope.message;
scope.$apply(); // not sure that you need this
console.log(scope.message);
});
}
}
});
:
이 아래 의견에 따라 고정, 당신이, 당신이 바로 캔트 깜빡하고
<li ng-repeat="x in topics">
<p change-content-on-click some-attr="message">{{ x.name }}</p>
</li>
<div ng-bind='message'></div> <!-- same as {{message}} but less messy on failure -->
JS 바인딩 두 가지 방법으로 데이터를 특성으로
나에게 꽤 좋아 보인다. 클릭 기능이 호출 되었습니까? 예를 들어 bind 함수에서'console.log'를하면? – Jonas
가 예상대로 작동하도록 업데이트되었습니다. 플 런커 – SoluableNonagon