SwiftUI:编译器无法在合理时间内对该表达式进行类型检查;尝试将表达式拆分为不同的子表达式

SwiftUI:编译器无法在合理时间内对该表达式进行类型检查;尝试将表达式拆分为不同的子表达式,swift,swiftui,Swift,Swiftui,我已经提取了它来创建一个单独的视图,当我尝试构建时,仍然会得到相同的编译错误消息 我想不出我怎么能把它进一步分解 struct MultiPicker: View { @State var dateComponents = DateComponents() let instructionString = ["hours", "minutes"] let pickerArray = [Array(0...12), Array(0..

我已经提取了它来创建一个单独的视图,当我尝试构建时,仍然会得到相同的编译错误消息

我想不出我怎么能把它进一步分解

struct MultiPicker: View  {
    @State var dateComponents = DateComponents()
    let instructionString = ["hours", "minutes"]
    let pickerArray = [Array(0...12), Array(0...60)]

        var body: some View {
            GeometryReader { geometry in
                HStack {
                    ForEach(0..<pickerArray.count) { column in
                        let selection = column == 0 ? dateComponents.hour : dateComponents.minute
                        Picker(instructionString[column], selection: selection) {
                            ForEach(0..<pickerArray[column].count) { row in
                                Text(pickerArray[column][row].description)
                            }
                        }
                        .pickerStyle(WheelPickerStyle())
                                        .frame(width: geometry.size.width / CGFloat(self.data.count + 2), height: geometry.size.height)
                                        .clipped()
                    }
                }
            }
        }
}

struct SlotMachine_Previews: PreviewProvider {
    static var previews: some View {
        
        MultiPicker()
    }
}
struct MultiPicker:视图{
@状态变量dateComponents=dateComponents()
let instructionString=[“小时”,“分钟”]
设pickerArray=[数组(0…12),数组(0…60)]
var body:一些观点{
GeometryReader{中的几何体
HStack{

弗雷奇(0..
Picker
selection
作为一个
绑定
,目前还没有。您需要一个
绑定
,它可能会得到
列==0?newDate.hour:newDate.minute
并根据您的喜好设置新日期。是的,这就是解决方案,谢谢。
Picker
接受
选择离子
作为一个
绑定
,它现在不是。你需要一个
绑定
,它可能会得到
列==0?newDate.hour:newDate.minute
,并设置你想要的新日期。是的,这就是解决方案,谢谢。