我有一个 setTimeout 回调,但是当我把它放在另一个函数中时,我收到一个错误tsc
:
function delayedSnapshot() {
setTimeout( function() {
var filename = "/Users/dc/dump/heapdump.heapsnapshot";
heapdump.writeSnapshot(function(err, filename) {
console.log("dump written to", filename);
});
process.exit(1);
}, 5000);
}
>> error TS2384: Overload signatures must all be ambient or non-ambient.
如果我去掉外包装delayedSnapshot
,它会编译得很好。我在这里找到了关于环境意味着什么的东西,但它似乎并不相关。
http://www.typescriptlang.org/Handbook#modules-working-with-other-javascript-libraries
有人可以解释我如何阻止这个错误的发生,但仍然让我的包装器控制回调触发吗?