typescript中Promise的类型系统如何处理pending状态的promise对象?

现在我们有这样一个函数, 运行后返回一个pending状态的包含一个promise对象和2个settle方法的对象; [图片] 现在问题来了 : 1:…
关注者
1
被浏览
4,956

1 个回答

ts是编译期,promise的状态是运行时,这俩完全不相关的东西


interface DynPromise<R, T, E> {
    resolve: (param?: T) => void
    reject: (err?: E) => void
    promise: Promise<R>
}

const constPromise = function<R, T, E> (this: DynPromise<R, T, E>) {
    this.promise = new Promise((resolve: any, reject) => {
        this.resolve = resolve
        this.reject = reject
    })
}