anhängen Ich habe gerade angefangen, sich mit JSON vertraut zu machen. Ich habe ein Klassenobjekt, das ich initialisiere, indem ich ein JSON übergebe. Dieses Objekt hat ein Array, das leer sein kann, und ich muss es auf Wert prüfen. so weit ich versuche:optionale Elemente an ein Array von JSON in Swift
init(json: JSON) {
id = json["id"].string
type = json["type"].string
text = json["text"].string
answer = json["answer"].string
format = json["format"].string
answeredBy = []
if let answeredByjson = json["answeredBy"].array {
for (_, userDict) in answeredByjson {
if let userDict = userDict as? [String : Any] {
answeredBy.append(JSON(User(dictionary: userDict)))
}
}
}
}
die Elemente im Array Wörterbücher sind, die verwendet werden müssen, um ein anderes Objekt (Benutzer) zu initialisieren. der Fehler, den ich bekomme, ist:
Ausdruckstyp '[JSON]' ist mehrdeutig ohne mehr Kontext.
Wie kann ich meinen Code aktualisieren?
das ist mein json:
{
"answer" : "rachel",
"answeredBy" : {
"j1K4WXbOFRXfm3srk9oMtZJ8Iop2" : {
"email" : "an email",
"pictureURL" : "a URL",
"uid" : "j1K4WXbOFRXfm3srk9oMtZJ8Iop2",
"name" : "a name"
},
"vtYlmyerugedizHyOW6TV847Be23" : {
"email" : "an email",
"pictureURL" : "a URL",
"uid" : "vtYlmyerugedizHyOW6TV847Be23",
"name" : "Rusty Shakleford"
}
},
"format" : "field",
"id" : "1",
"type" : "text",
"text" : "In a foot race, Jerry was neither first nor last. Janet beat Jerry, Jerry beat Pat. Charlie was neither first nor last. Charlie beat Rachel. Pat beat Charlie. Who came in last?"
}
Welche Zeile genau ist verursacht den Fehler? Was ist 'JSON' (Ich verweise den Datentyp in Ihrem geposteten Code)? – rmaddy
@rmaddy wahrscheinlich SwiftyJSON –
Entschuldigung, ja. Ich verwende SwiftyJSON – Sente