ForEach无法使用分支

时间:2020-03-22 06:42:56

标签: swiftui

我正在通过SwiftUI使用Xcode 11.3.1。

此代码正确运行

h2o.init()

enter image description here 但是以下代码给出了错误。

为什么?

struct ContentView: View {
    var body: some View {
        VStack {
            ForEach(1...5, id: \.self) { index in
                Text("\(index) of coffee.")
            }
        }
    }
}

错误消息是:

无法推断复杂的闭包返回类型;添加显式类型 消除歧义。

1 个答案:

答案 0 :(得分:1)

因为视图构建器期望返回一种类型的视图,但是条件不会生成不透明的返回。解决-只需将条件嵌入组

ForEach(1...5, id: \.self) { index in
  Group {
    if index == 1 {
        Text("Cup of coffee.")
    } else {
        Text("\(index) cups of coffee")
    }
  }
}