如何在SwiftUI列表中加载元组数组

fumotvh3  于 2023-01-04  发布在  Swift
关注(0)|答案(1)|浏览(97)

下面的代码生成错误Type cannot conform to 'Hashable'
如何将元组数组加载到SwiftUI列表?

代码

import SwiftUI
struct TestingGeneral: View {

    let users: [(name: String, age: Double)] = [
        ("Jeff", 25),
        ("Nathan", 18)
    ]
   
    var body: some View {
        VStack{
            List {
                ForEach(users, id: \.self) { user in
                    Text(user.name)
                    Text("\(user.age)")
                }
            }
        }
    }
}

错误

类型'(名称:字符串,年龄:Double)"不能符合"可哈希"

yrwegjxp

yrwegjxp1#

ForEach中使用self与SwiftUI不太兼容

ForEach(users, id: \.self) { user in

你应该总是有一个唯一的变量。SwiftUI是关于身份的。

ForEach(users, id: \.name) { user in

查看#wwdc21 https://developer.apple.com/wwdc21/10022中的“揭开SwiftUI的神秘面纱

相关问题