d3.js – Angular2 / Typescript D3v4 – 手动包括打字?

我一直在尝试使用我的Angular2应用程序启动D3.
然而,新的d3v4和可用的打包文件似乎存在问题,即尝试使用诸如scaleLinear()之类的新方法而不是不再可用的scale.linear()将导致错误
类型’typeof d3’上不存在属性’scaleLinear’.

由于tomwanzek似乎已经在这个问题并试图在https://github.com/tomwanzek/d3-v4-definitelytyped创建新的定义,我想知道是否有办法在我的angular2项目中手动包含已经可用的打字文件

解决方法

在参考Arlo的回答时,让我扩展一下简短的历史和当前的答案.我创建了repo https://github.com/tomwanzek/d3-v4-definitelytyped以开发新的D3版本4 TypeScript定义,当D3 v4尚未最终完成且TypeScript 2即将出现时.后者是一个主要因素,因为它改变了定义的写法和可以获得的方式,即@types.

通过对回购商中列出的合作者的一些着名点头,我们最终确定了定义并将它们迁移到DefinitelyTyped.它们现在主动维护在DefinitelyTyped的types-2.0分支中.这是发布到npm @types的分支.

您可能已经看到的一些混淆,与个别D3 v4模块定义的事实有关,例如: d3-selection,已经通过npm install –save @ types / d3-selection提供了相当长的一段时间.然而,直到昨天,npm install –save @ types / d3获得的定义仍然拉低了旧的D3 v3.5.x定义.

截至目前,D3 v4标准软件包定义可从npm install –save @ types / d3获得(如果需要,仍可通过获取3.5版本从@types中提取D3 v3.5的旧版本定义)

至于使用导入的定义:

>不要分别从(‘d3’和’@ types / d3’)安装和使用d3标准捆绑包,同时分别安装已包含在其中的D3模块,例如: ‘d3-hierarchy’和’@ types / d3-hierarchy’.

至于Angular 2,是的,d3-ng2服务或类似的东西是一种方法.我确信它可以有所改进,它是与angular-cli一起开始快速原型制作的.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...