2016-06-19 3 views
2

stopPropagation 메서드를 사용하려고합니다. d3.d.ts와 함께 d3.js를 사용합니다 (typings 통해 다운로드). 어떻게 든 stopPropagation에 전화 할 수 있습니까? 파이어 폭스에서 응용 프로그램을 실행할 때까지 event.stopPropagation()을 사용했습니다. 입력 내용은 d3.event이지만 언급 된 메서드 선언은 포함되어 있지 않습니다.Typescript에서 stopPropagation을 호출하는 방법

답변

7

사실 그리 어렵지 않았습니다. stopPropagation을 위해 내가 필요 :

event: Event | BaseEvent 

그래서 essentialy 이벤트가 그 중 하나가 될 수 있습니다

(d3.event as Event).stopPropagation(); 

typings는 말한다. 노동 조합이 타이프 스크립트로 어떻게 작동하는지 잊어 버렸습니다. type 속성은 EventBaseEvent 중 하나뿐이므로이 정보는 전적으로 표시되었습니다. 내가 BaseEvent (나는 그것이 d3에 의해서만 사용된다고 믿는다)에 대한 캐스트가 필요했던 한 경우는 dragstart 이벤트에 있었다.

당신은 유형 가드 스타일의 점검을 수행하여 유형을 좁힐 수
+0

.... 가장 쉬운 작업 (이벤트로 d3.event) .stopPropogation를() .... 좋은 대답 – Ryan

+0

나는 타이핑이 이벤트를 위해 어떻게 든 작동하지 않을 수도 있다고 생각한다. – Ryan