首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Typescript中调用stopPropagation

如何在Typescript中调用stopPropagation
EN

Stack Overflow用户
提问于 2016-06-20 04:40:09
回答 2查看 7.2K关注 0票数 5

我正在尝试使用stopPropagation方法。我使用d3.js和d3.d.ts (通过typings下载)。是否可以以某种方式调用stopPropagation?我一直使用event.stopPropagation(),直到我在火狐中运行了我的应用程序。Typings确实有d3.event,但它不包含上述方法的声明。

EN

回答 2

Stack Overflow用户

发布于 2016-06-20 08:09:38

实际上,这并不是那么难。对于stopPropagation,我需要:

代码语言:javascript
运行
复制
(d3.event as Event).stopPropagation();

类型是这样的:

代码语言:javascript
运行
复制
event: Event | BaseEvent

所以本质上,事件可以是其中的任何一个。我已经忘记了联合在typescript中是如何工作的。由于type属性只是EventBaseEvent中的一个公共属性,因此它是单独显示的。我需要强制转换为BaseEvent (我相信它只由d3使用)的唯一情况是在dragstart事件上。

票数 10
EN

Stack Overflow用户

发布于 2016-06-20 14:51:05

您可以通过执行类型保护样式检查来缩小类型范围:

代码语言:javascript
运行
复制
if (d3.event instanceof Event) {
}

更多信息:https://basarat.gitbooks.io/typescript/content/docs/types/typeGuard.html

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37911618

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档