swift - 如何在 swift 中创建一个可选的闭包?

标签 swift optional-parameters

我正在尝试在 Swift 中声明一个采用可选闭包的参数。我声明的函数如下所示:

class Promise {

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

}

但是 Swift 提示说“条件中的绑定(bind)值必须是可选类型”,其中声明了“if let”。

最佳答案

您应该将可选闭包括在括号中。这将正确地确定 ? 运算符的范围。

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

关于swift - 如何在 swift 中创建一个可选的闭包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24395853/

相关文章:

C# 委托(delegate)给具有不同可选参数的方法

ios - Swift - 约束或其 anchor 引用不同 View 层次结构中的项目

ios - 如何在 UITabBar 的按钮上设置 accessibilityIdentifier

ios - 遍历 Firebase 中一个 child 的所有键

ios - 如何在 SpriteKit 的所有设备上使文本大小相同?

抽象方法中的 C# 可选参数

PHP 可选参数 - 按名称指定参数值?

swift - 如何根据 swift 3 中动态创建的按钮的文本设置按钮宽度?

vb.net - 将可选的 'List(Of t)' 参数的默认值设置为空列表?

c# - 动态和可选方法参数