首页 文章

保存承诺履行并拒绝承诺

提问于
浏览
0

嗨,我正在尝试创建一个承诺,然后保存函数履行并拒绝进入数组或字典 . 我不知道这是否可能,我得到一些编译器错误 . 我知道你可以将函数存储在数组中,但我认为因为我需要做其他事情的承诺,这里是我的代码

let requestPromise = Promise<Bool> { fulfill, reject in
    self.socket.emit(message,dic)
    let dicFunc = [ "fulfill": fulfill, "reject":reject]
    self.request.updateValue(dicFunc, forKey: uuid)
}

我得到错误无法使用类型'([String:(NSError) - > Void],forKey:String)'的参数列表调用'updateValue'

1 回答

  • 0

    fulfillreject 变量具有不同的类型,因此它们不能同时包含在同一个字典或数组中的单独值中 . (除非你可能创建一个包含 Any 的字典/数组,但这会丢失所需的类型信息 . )

    看看 Promise.pendingPromise() . 你可以保存一个 PendingPromise 数组 .

相关问题