I try to update data by adding new Field into existing data in firestore by react native expo
when I try to update by setDoc() , all existing data removed and only newly update one remian
How can update data into same document in firebase

can someone guide me how can add new Field without losing existing data in firestore.
here is my attemp by setDoc
const updateUser = async(key, value) => {
await addDoc(doc(db,'users',user.uid), { [key]: value })
};
I try to add is new Field . how can add new field I also try as follow
const updateUser = async(key,value)=>{
const updateRef = doc(db, "users",value);
await updateDoc(updateRef, {
[key]: true
});
}
You need to set option merge.
firebase 9+
function updateData(collPath, data) {
setDoc(doc(db, collPath, data.id), data, { merge: true})
}
firebase 8-
function updateData(collPath, data) {
db.collection(collPath).doc(data.id).set(data, { merge: true })
}
And in both of libraries you can use function updateDoc() or v8 ...doc().update()
You can import firestore from firebase library
import firestore from '@react-native-firebase/firestore';
And then you can get the document reference you need
const docRef = firestore().collection('Users').doc('ABC')
after that you can update your doc by method update()
docRef
.update({
age: 31,
})
.then(() => {
console.log('User updated!');
});
Detailed about usage of firestore you can find in this documentation https://rnfirebase.io/firestore/usage