javascript - 新版本中的 D3 事件

标签 javascript angular typescript d3.js

我写了以下代码段:

ngAfterViewInit() {
    var svg = d3
      .select("svg")
      .call(d3.zoom().on("zoom", () => {
        svg.attr("transform", d3.event.transform)
      }))
      .append("g")
}
我知道 d3.event已在新版本中删除,但阅读有关如何处理回调事件的文档并不能让我理解如何修改它......
有人可以以像我这样的新手可以理解的简单方式向我解释这一点以及如何修复它以使其正常工作吗?谢谢

最佳答案

来自 this migration guide , d3.event.transform必须替换为以下内容

ngAfterViewInit() {
  let svg = d3                                // <-- I'd suggest using `let` instead of `var`
    .select("svg")
    .call(d3.zoom().on("zoom", (event) => {   // <-- `event` argument
      svg.attr("transform", event.transform); // <-- use `event` here
    }))
    .append("g");
}

关于javascript - 新版本中的 D3 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69971491/

相关文章:

javascript - Google 登录按钮不起作用

javascript - 如何检查将字符串分配给两个变量是通过引用还是通过Javascript中的值?

javascript - 将 Json 响应转换为逗号分隔(千) - Angular 5 - ES6

css - ng-content(工具提示)未填充内容

typescript - React-styledComponents : Types of property 'children' are incompatible

javascript - 如何在 graphql 中定义不带任何参数的突变或查询?

javascript - 如何处理克隆的幻灯片以在 SlickJS 中创建无缝的 html5 视频 slider ?

javascript - Tablesorter 总是在内容编辑后重新加载第一页

node.js - 无法在 Koa2 中找到路由,面临错误 TypeError : route. paths is not a function

javascript - NestJs:使用类验证器验证对象数组