В SwiftUI я хочу создать сетку данных, начиная с JSON файла, но я не знаю, как это сделать. Это мой JSON Файл:
[
{
"id": 1,
"name": "La Louve",
"imageName": "lalouve1",
"grade": "Admin",
"description": "Texte de présentation"
},
{
"id": 2,
"name": "Will",
"imageName": "will",
"grade": "Admin",
"description": "Texte de présentation"
},
{
"id": 3,
"name": "Cassou",
"imageName": "cassou",
"grade": "Admin",
"description": "Texte de présentation"
},
{
"id": 4,
"name": "Dydou",
"imageName": "dydou",
"grade": "Co-Admin",
"description": "Texte de présentation"
},
{
"id": 5,
"name": "Max",
"imageName": "max",
"grade": "Co-Admin",
"description": "Texte de présentation"
}
]
Это структура для членов:
struct Membre: Hashable, Codable, Identifiable {
var id: Int
var name: String
var imageName: String
var grade: Grade
var description: String
}
extension Membre {
var image: Image {
ImageStore.shared.image(name: imageName)
}
}
enum Grade : String, Codable {
case admin = "Admin"
case coAdmin = "Co-Admin"
case responsableStaff = "Responsable Staff"
case membreStaff = "Membre Staff"
case membrePlus = "Membre +"
case membre = "Membre"
}
extension Grade {
static let allItems: [Grade] = [.admin, .coAdmin, .responsableStaff, .membreStaff, .membrePlus, .membre]
}
У меня есть файл для получения данных из файла JSON и взамен я есть массив членов. Этот файл в порядке.
Теперь я хочу сделать сетку из этих членов в представлении с этим VStack:
VStack {
membreData[index].image
.resizable()
.frame(width: 100, height: 100)
Text(membreData[index].name)
}
Можете ли вы помочь мне, пожалуйста? ;)