一尘不染

如何快速进行可选的关闭?

swift

我试图在Swift中声明一个需要可选闭包的参数。我声明的函数如下所示:

class Promise {

 func then(onFulfilled: ()->(), onReject: ()->()?){       
    if let callableRjector = onReject {
      // do stuff! 
    }
 }

}

但是Swift抱怨说,“条件”中的绑定值必须是一个可选类型,其中声明了“ if let”。


阅读 189

收藏
2020-07-07

共1个答案

一尘不染

您应该将可选的闭包括在括号中。这将适当地限制?操作员的范围。

func then(onFulfilled: ()->(), onReject: (()->())?){       
    if let callableRjector = onReject {
      // do stuff! 
    }
 }
2020-07-07