Als «codable» getaggte Fragen


7
Können fehlende Schlüssel mit JSONDecoder in Swift 4 einen Standardwert verwenden, anstatt optionale Eigenschaften zu sein?
Swift 4 hat das neue CodableProtokoll hinzugefügt . Wenn ich es verwende JSONDecoder, müssen anscheinend alle nicht optionalen Eigenschaften meiner CodableKlasse Schlüssel im JSON haben, oder es wird ein Fehler ausgegeben. Jede Eigenschaft meiner Klasse optional zu machen, scheint ein unnötiger Aufwand zu sein, da ich wirklich den Wert im …
113 json  swift  swift4  codable 


12
Dekodieren einer Eigenschaft mit dem Typ eines JSON-Wörterbuchs im decodierbaren Swift 4-Protokoll
Angenommen, ich habe einen CustomerDatentyp, der eine metadataEigenschaft enthält, die ein beliebiges JSON-Wörterbuch im Kundenobjekt enthalten kann struct Customer { let id: String let email: String let metadata: [String: Any] } { "object": "customer", "id": "4yq6txdpfadhbaqnwp3", "email": "john.doe@example.com", "metadata": { "link_id": "linked-id", "buy_count": 4 } } Die metadataEigenschaft kann ein …
103 json  swift  swift4  codable 

4
Wie verwende ich benutzerdefinierte Schlüssel mit dem Decodable-Protokoll von Swift 4?
Swift 4 führte die Unterstützung für die native JSON-Codierung und -Decodierung über das DecodableProtokoll ein. Wie verwende ich dafür benutzerdefinierte Schlüssel? Angenommen, ich habe eine Struktur struct Address:Codable { var street:String var zip:String var city:String var state:String } Ich kann dies in JSON codieren. let address = Address(street: "Apple Bay …
102 json  swift  swift4  codable 

6
So schließen Sie Eigenschaften von Swift 4's Codable aus
Swift 4 ist neu Encodable/Decodable Protokolle machen JSON (de) Serialisierung sehr angenehm. Ich habe jedoch noch keinen Weg gefunden, genau zu steuern, welche Eigenschaften codiert und welche decodiert werden sollen. Ich habe festgestellt, dass das Ausschließen der Eigenschaft aus der beigefügten CodingKeysAufzählung die Eigenschaft insgesamt aus dem Prozess ausschließt. Gibt …
92 json  swift  codable 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.