2013-07-10 4 views
0

격리 된 범위가있는 지시문을 사용하는 angularjs 응용 프로그램이 있습니다. 이 지시문의 원치 않는 부작용은 동일한 요소에 연결된 이벤트 핸들러가 더 이상 실행되지 않는다는 것입니다. 이 Plunkr는 보여 app.js에서각도 이벤트 충돌

http://embed.plnkr.co/aG3X8uCGxQmnM1dJaQmJ/preview

, 당신은 관련 사용자 작업에 화재가 시작됩니다 다음 줄, mouseenter,하는 MouseLeave 및 dblclick 이벤트 핸들러를 주석 경우 :

scope: { data: '=source' }, 

수 아무도이 효과를 설명하지 않습니까? 버그인가, 디자인인가? 컨트롤러에서 이벤트 처리기를 원하는 방식으로 실행시키는 방법.

답변

1

지시문을 설정하는 방법은 격리 된 범위를 만듭니다. 격리 된 범위는 부모 범위를 상속하지 않으므로 지시문 요소에 표시되지 않습니다.

한 가지 방법은이 plunker

+0

완벽한을 참조하십시오이

<div ng-dblclick="dblclick()" ng-mouseenter="mouseenter()" ng-mouseleave="mouseleave()"> <span my-directive source="getData()">Some content</span> </div> 

같은 자식 요소에 지시어를 이동하는 것입니다 해결하기! 매우 감사합니다. –