在Callback Swift中返回Callback



我有一个SDK集成,使用完成返回响应,但我想创建另一个完成来返回回调响应,但我不知道如何。

这是我的尝试

func validatingProcces(completion: ((Any)?)->()) {
let conekta = Conekta()
conekta.delegate = self
conekta.publicKey = "key_KJysdbf6PotS2ut2"
conekta.collectDevice()
let card = conekta.card()
let token = conekta.token()

card!.setNumber(String(cardToSave!.cardNumber), name: cardToSave!.fullName, cvc: String(cardToSave!.cvc), expMonth: String(cardToSave!.month), expYear: String(cardToSave!.year))
token!.card = card


token!.create(success: { (data) -> Void in
completion(data as Any)

}, andError: { (error) -> Void in
print(error as Any)
completion(error as Any)
})

}

我有以下错误:

转义闭包捕获非转义参数'completion'

也:

  1. 参数'completion'隐式不转义
  2. 在这里捕获的

p。你可以在这里找到SDK集成:https://github.com/conekta/conekta-ios

非常感谢!

从源代码来看,你可以像这样做一个回调:

completion: @escaping (Any?, Error?) -> ()

并传入API回调的结果,以便您可以像这样在其他地方处理它

token!.create(success: { data in
completion(data, nil)
}, andError: { error in
print(error as Any)
completion(nil, error)
})

让我知道这是否有效

相关内容

  • 没有找到相关文章

最新更新