使用Flow从函数中返回Promise或未定义

时间:2019-04-12 05:40:36

标签: javascript flowtype

我有一个应该返回Promise<*>或什么都不返回的方法。

  myFunc = (id : number) : Promise<*> => {

    if (condition) {
      return Promise
      },
      () => {
        do something
    }
  }

Flow抛出一个错误

Promise. This type is incompatible with an implicitly-returned undefined.

我尝试过

Promise<*>?

?Promise<*>

Promise<*> | undefined
and
mixed

但没有任何效果。返回any类型时我可以获得成功。但是根据文档,不建议这样做。

2 个答案:

答案 0 :(得分:0)

我认为问题在于if块之后没有默认的return语句,这就是为什么会给出错误

您可以这样做

{
 if(condition){
 return Promise(...)
 }
 return null
}

答案 1 :(得分:-1)

要等待任何类型,您必须输入

QMessageBox