Скорее всего, у вас есть ошибка, которая сбивает с толку проверку типов и приводит к ошибке «неспособна проверить тип». Даже простая ошибка, такая как неправильное написание имени свойства, может вызвать такое поведение в большом выражении.
Выделите подпредставления, чтобы помочь найти реальную проблему. Я бы так учел:
var courses: [Course] { *Sample Data* }
struct GradeCalculatorView: View {
@State var course = courses[0] //Course that is currently selected by the user
var body: some View {
VStack {
Text(course.name)
List(course.categories) { category in
CategoryView(category: category)
}
}
}
}
struct CategoryView: some View {
var category: GradeCategory
var body: some View {
VStack {
Text(category.name)
List(category.items) { item in
GradeItemRow(item: item)
}
}
}
}
struct GradeItemRow: View {
var item: GradeItem
var body: some View {
HStack {
Text(item.name)
Spacer()
Text(String(item.scoredPoints) + " / " + String(item.totalPoints))
}
}
}