Delete index at array in Firestore

Array operations have finally been supported. Deletion, addition, etc. are supported via the value (not the index) now:See this

At the moment, there are a few bugs at the moment though as this one I encountered.

The dev blog here:


It is not currently possible to modify individual elements of an array stored in Cloud Firestore.

If you stored the data as a map (the keys dont matter) like this:

{
  name: "sam",
  things: {
    one: "value",
    two: "value"
  }
}

Then you can delete individual elements like this:

// Delete the things.one data
db.collection("whatever").document("whatever").updateData([
    "things.one": FieldValue.delete(),
]) { err in
    if let err = err {
        print("Error updating document: \(err)")
    } else {
        print("Document successfully updated")
    }
}

Now the data will look like this:

{
  name: "sam",
  things: {
    two: "value"
  }
}