这应该很简单,但我似乎无法理解。
npm模块next tick在其index.js中执行如下操作:
module.exports = (function () {
if (/*node*/) {
return process.nextTick;
}
...
if (/*other env*/) {
return function (cb) { setTimeout(callable(cb), 0); };
}
return null;
}());
还没有打字,所以我创建了next-tick.d.ts并将其包含在我的tsconfig.js中。
然而,我不知道它应该包含什么:
我唯一没有遇到编译器错误的地方是:
declare module "next-tick" {
export default function(fn:Function)
}
在消费文件中:
import nextTick from 'next-tick';
但当我捆绑webpack并运行它时,它会说:
next_tick_1.default is not a function
.所以它正在尝试呼叫
.default
.
如果我使用require(并使用webpack键入为其添加声明),也是有效的
var nextTick:(fn:Function)=>void = require('next-tick');
但我确信我应该能够通过输入打字稿来做到这一点?