我尝试使用打字稿,做出反应,d3。
我的控制台抱怨来自npm的d3-cloud需要一个声明文件,所以我想出了这个: EDIT3:声明文件现在看起来像这样,给出了相同的错误消息:
declare module 'd3-cloud' {
export function cloud (): Function;
}
我现在得到的只是这个错误:
TS2349:无法调用类型缺少调用签名的表达式。输入' typeof' d3-cloud''没有兼容的呼叫签名。
感谢您的帮助!
编辑:我可能会补充说,一旦我重新加载页面,就会在错误消息接管之前闪现渲染的文字云。所以它有点可行,但......那个AT-loader真的很不开心。
EDIT2:我使用了这样的npm模块:
import * as d3Cloud from 'd3-cloud'
const layout = d3Cloud()
.size([width, height])
.font(font)
...
答案 0 :(得分:1)
由于你使用的库直接导出一个函数,你可以这样输入:
declare module 'd3-cloud' {
let cloud: Function;
export = cloud;
}