我正在尝试使用Mocha测试一个用Typescript编写的NodeJS项目,我从Definitely得到了mocha.d.ts文件
https://github.com/borisyankov/DefinitelyTyped/blob/master/mocha/mocha.d.ts。
下面是我在Webstorm中看到的错误:
C:/Users/Me/AppData/Roaming/npm/tsc.cmd --sourcemap Test.ts --module commonjs
C:/Users/Me/WebstormProjects/Core/test/External/mocha.d.ts(76,1): error TS2152: Overload signatures must all be ambient or non-ambient.
C:/Users/Me/WebstormProjects/Core/test/External/mocha.d.ts(78,1): error TS2152: Overload signatures must all be ambient or non-ambient.这是mocha定义中突出显示的部分,用于显示错误:
declare function setup(action: () => void): void;
declare function setup(action: (done: mocha.Done) => void): void;发布于 2014-01-07 00:26:59
TS对重载很挑剔。另请参阅Constructor overload in TypeScript
尝试删除第一个声明并添加一个?将参数标记为可选(免责声明-我还没有测试过)
declare function setup(action: (done?: mocha.Done) => void): void;发布于 2014-01-07 06:18:46
这个定义是有效的。我怀疑这是一个WebStorm问题,或者在其他地方的代码中出现了问题。
See this compiles fine:
declare function setup(action: () => void): void;
declare function setup(action: (done: number) => void): void;https://stackoverflow.com/questions/20954188
复制相似问题