Using the updateDoc() method, you can delete one or more document field(s) in the Firebase Firestore Database.
- Delete A Document from a collection
- Delete A Field from a document → you’re here
Let’s say you want to delete the field called code from a sample Firestore document like below.
Import Firestore and d*e-structure* the four methods that we need to perform the delete operation to one or more document field(s).
- getDatabase()
- doc()
- updateDoc()
- deleteField()
import { getFirestore, doc, updateDoc, deleteField } from "firebase/firestore";
Then, initialize the Firestore database.
const db = getFirestore(app);
The updateDoc() method takes two arguments:
- doc()
- data {}
Doc()
The first argument of the updateDoc() method is doc().
The doc() method takes three arguments.
- database → db
- collection name → cities
- Document ID → yftq9RGp4jWNSyBZ1D6L (see the sample document screenshot above)
Call the doc() method with these arguments and assign it to a constant called docRef.
const docRef = doc(db, "cities", "yftq9RGp4jWNSyBZ1D6L");
Delete Field()
The second argument of the updateDoc() method is the JavaScript object with the field name(s) that you want to delete.
In this case: code
const data = {
code: deleteField()
}
To delete a field from a Firestore document, call the deleteField() method as a value of it.
Call updateDoc() To Document Field
Invoke the updateDoc() method and pass docRef and data as arguments to it.
The updateDoc() method returns a promise so chain .then() and .catch() methods.
import {getFirestore, doc, updateDoc, deleteField} from "firebase/firestore";
const db = getFirestore();
const docRef = doc(db, "cities", "yftq9RGp4jWNSyBZ1D6L");
const data = {
code: deleteField()
};
updateDoc(docRef, data)
.then(() => {
console.log("Code Field has been deleted successfully");
})
.catch(() => {
console.log(error);
})
When you run the updateDoc() query, the field name code **will be **removed from the Firestore document.
One more things it’s worth pointing out here is when you delete all the fields from a document, the document ID remains available in the collection and you can add a new field to the document.
Top comments (0)