【发布时间】:2018-03-24 12:32:00
【问题描述】:
我有一个可能包含这样声明的 promise 属性的对象:
type PromiseAction = {
+type: string,
promise: ?Promise<any>,
};
函数的 action 参数被声明为 PromiseAction 类型:
(action: PromiseAction) =>
稍后我检查接收到的action 对象是否具有promise 属性以及action.promise 是否具有then:
if (action.promise && typeof action.promise.then === 'function') {
如果是这样,那么我会连接到 Promise 链:
return promise.then(
此时我收到错误消息:“类型参数U 方法调用then。缺少注释”
我可以在source for flow 中看到Promise 的then 属性有一个U 参数,我假设它是被要求的参数。
如果我在类型声明中只有一个参数Promise<+R>,如何提供U 注释?
【问题讨论】:
-
您是否尝试过
return (action.promise.then(...): Promise<any>)(或酌情替换any)?
标签: flowtype