【问题标题】:Define the type of error in function argument在函数参数中定义错误类型
【发布时间】:2017-03-29 17:31:05
【问题描述】:

下面error的类型如何定义?

async function falseThrow (promise: Promise<any>, error): any {
  let value: any = await promise
  if (!value) throw error
  return value
}

【问题讨论】:

  • 你希望它是什么类型的?
  • @MikeC 在上述情况下,error 参数是Error 对象的一个​​实例。
  • 那你就不能error: Error吗?
  • 这不是和your last question一样吗?
  • @j08691 这个问题是关于定义error 参数,这个问题是关于定义返回值。

标签: javascript flowtype


【解决方案1】:

正如您将promise 的类型定义为Promise&lt;any&gt;。你使用:

这取决于您想要的类型。如果错误预计是一个字符串,那么它将是:

async function falseThrow (promise: Promise<any>, error:string): any {
  let value: any = await promise
  if (!value) throw error
  return value
}

编辑

或者你可以使用Error,如果是这样的话,就像你在自己的回答中所说的那样。

【讨论】:

    【解决方案2】:

    这行得通!哎呀,以为没有。

    async function falseThrow (promise: Promise<any>, error: Error): any {
      let value: any = await promise
      if (!value) throw error
      return value
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-02-10
      • 2014-07-29
      • 2022-01-11
      • 2021-07-12
      • 2018-11-07
      • 1970-01-01
      • 2011-12-13
      • 2014-05-26
      相关资源
      最近更新 更多