Swift 获得;表达式类型在没有上下文的情况下是不明确的;使用VStack内部的列表时
因此,我在VStack中使用了一个列表视图,并且遇到了一个问题,即“表达式的类型在没有更多上下文的情况下是不明确的”。当我开始通过Firestore而不仅仅是硬编码的值填充数据时,问题开始出现。我简化了我的代码,以显示我如何使用下面列表的结构Swift 获得;表达式类型在没有上下文的情况下是不明确的;使用VStack内部的列表时,swift,firebase,google-cloud-firestore,swiftui,Swift,Firebase,Google Cloud Firestore,Swiftui,因此,我在VStack中使用了一个列表视图,并且遇到了一个问题,即“表达式的类型在没有更多上下文的情况下是不明确的”。当我开始通过Firestore而不仅仅是硬编码的值填充数据时,问题开始出现。我简化了我的代码,以显示我如何使用下面列表的结构 import SwiftUI import FirebaseAuth import FirebaseFirestore struct MainView: View { @State private var radius = 300
import SwiftUI
import FirebaseAuth
import FirebaseFirestore
struct MainView: View {
@State private var radius = 300
private var name = "Name"
@ObservedObject private var viewModel = TaskViewModel()
let db = Firestore.firestore()
init() { UITableView.appearance().backgroundColor = .clear
UITableView.appearance().isScrollEnabled = false
}
var body: some View {
return NavigationView(content: {
VStack {
Spacer()
.frame(height: 150)
List(viewModel.task) { item in
VStack(alignment: .leading) {
Image(systemName: item.completedIcon)
Text(item.title).font(Font.custom("Permanent Marker", size: 18))
}
}.navigationBarTitle("Tasks")
.onAppear() {
self.viewModel.fetchData()
}
.frame(width: 318, height: 404, alignment: .center)
.shadow(radius: 7)
.cornerRadius(25.0)
.listRowBackground(Color.white)
}
})
}
}
任何帮助都将不胜感激问题就在这里
List(viewModel.taks)
确保您的自定义模型符合
struct Task:Identifiable {
或添加id属性
List(viewModel.taks, id: \.id) { item in
问题就在这里
List(viewModel.taks)
确保您的自定义模型符合
struct Task:Identifiable {
或添加id属性
List(viewModel.taks, id: \.id) { item in
您需要提供有关viewModel.task的更多详细信息。您的问题很可能出现在
列表(viewModel.taks)
您需要提供有关viewModel.task的更多详细信息。您的问题很可能出现在列表(viewModel.taks)
Ohh。是的,我没有确定任务。如果您不介意解释的话,为什么id对列表很重要?这是一种使循环有效的方法,可以是id或ididentifiable@DayemSaeedSwiftUI使用id
属性(可以作为id
输入参数显式传入,也可以使用来自可识别的id
属性)在需要更新时区分列表
,以便仅修改受更新模型影响的行<代码>id
在删除例如.Ohh的行时也会使用。是的,我没有确定任务。如果您不介意解释的话,为什么id对列表很重要?这是一种使循环有效的方法,可以是id或ididentifiable@DayemSaeedSwiftUI使用id
属性(可以作为id
输入参数显式传入,也可以使用来自可识别的id
属性)在需要更新时区分列表
,以便仅修改受更新模型影响的行<例如,在删除行时也使用代码>id
。