Append to array [String: Beliebig] dictionary-Struktur

Montage einen Daten-payload übergeben GRMustache.swift für die Darstellung Schnurrbart Vorlagen, ich bin in einem Szenario, wo muss ich Anhängen von Daten an ein array vorher definiert im Wörterbuch.

Meine Daten-Struktur beginnt wie:

var data: [String: Any] = [
    "key1": "example value 1",
    "key2": "example value 2",
    "items": [
        //I need to append here later
    ]
]

Den items key-pair-Mädchen ist eine Sammlung muss ich anfügen, später in einer Schleife.

Hinzufügen data["items"] array, ich versuche so etwas wie:

for index in 1...3 {
    let item: [String: Any] = [
        "key": "new value"
    ]

    data["items"].append(item)
}

Dieser Fehler, als Wert vom Typ Any? hat kein Mitglied append - und binary-operator += angewendet werden kann nicht auf Operanden vom Typ Any? und [String : Any].

Dies macht Sinn, da muss ich cast den Wert Anhängen, aber ich kann nicht mutieren array.

Umwandlung in array, egal ob zwingen niedergeschlagenen gibt den Fehler:

(data["items"] as! Array).append(item)

'Any?' nicht konvertierbar 'Array<_>'; meinst du mit 'so!' und Kraft niedergeschlagen?

Nicht verwenden mutierend Mitglied auf unveränderlichen Wert vom Typ 'Array<_>'

Scheint, wie meine Besetzung ist falsch; oder, vielleicht werde ich über diese in der falschen Art und Weise.

Jede Empfehlung zum ausfüllen data["items"] iterativ über die Zeit?

Schreibe einen Kommentar