首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PromiseKit编译错误

PromiseKit编译错误
EN

Stack Overflow用户
提问于 2020-03-30 04:55:55
回答 1查看 337关注 0票数 1

我是PromiseKit的新手,但是我不能得到一些非常基本的工作。考虑到这一点:

代码语言:javascript
复制
func test1() -> Promise<Bool> {
    return Promise<Bool>.value(true)
  }

  func test2() -> Promise<Bool> {
    return Promise<Bool> { seal in
      seal.fulfill(true)
    }
  }

  func test3() -> Promise<Bool> {
    return Promise<Bool>.value(true)
  }

下面给出了每一行的错误:

无法将Promise<Bool>类型的值转换为闭包结果类型Guarantee<()>

代码语言:javascript
复制
 firstly {
    test1()
  }.then {
    test2()
  }.then {
    test3()
  }.done {

  }.catch {

  }

我做错了什么?我一直在尝试各种组合,但似乎没有什么效果。我上PromiseKit 6.13了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-30 05:36:20

PromiseKit故障排除指南中获取

Swift不允许您忽略闭包的参数。

因此,您必须只使用指定闭包参数,如下所示:

代码语言:javascript
复制
firstly {
        test1()
    }.then { boolValue in
        self.test2()
    }.then { boolValue in
        self.test3()
    }.done { _ in

    }.catch { _ in

    }

或者即使将_名称分配给参数(确认参数存在但忽略它的名称)

代码语言:javascript
复制
firstly {
        test1()
    }.then { _ in
        self.test2()
    }.then { _ in
        self.test3()
    }.done { _ in

    }.catch { _ in

    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60924297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档