【发布时间】:2018-08-25 21:44:14
【问题描述】:
我正在尝试调用一个函数,该函数根据某些条件使用 Promise.resolve 返回已解决的承诺。
该函数的一个过度简化版本如下:
function fullFilledPromiseReturner(num: number) {
if (num > 5) {
return Promise.resolve(5);
} else {
return Promise.resolve();
}
}
fullFilledPromiseReturner(4).then(data => {
console.log(data);
});
现在 TypeScript 不让它通过编译器并抛出以下错误:
[ts] Cannot invoke an expression whose type lacks a call signature. Type '(<TResult1 = void, TResult2 = never>(onfulfilled?: ((value: void) => TResult1 | PromiseLike<TResu...' has no compatible call signatures.
我做错了什么?
【问题讨论】:
标签: javascript typescript promise es6-promise