[Firebase] firestore 데이터 일부 수정하기 (updateDoc/JavaScript)

팀프로젝트에서 데이터를 관리하기위해 firebase를 사용하였다. 강의에서 데이터를 추가하고 받아오는 것만 배웠지 수정하는 건 처음이어서 혼란이 조금 있었다. 원래 맡은 역할은 데이터와 연관이 없었는데 담당한 구현 사항의 전반적인 틀을 잡아두고 팀원들이 고민하고 계신 데이터 수정 방법을 같이 알아보았다.

 

 

Firestore 초기화

import { initializeApp } from 'firebase/app';
import { getFirestore } from 'firebase/firestore';

// firebase configuration 입력
const firebaseConfig = { };

// firebase 초기화 (initialize)
const app = initializeApp(firebaseConfig);

// cloud firestore 초기화, 서비스 참조주소 받아오기 (get reference)
const db = getFirestore(app);

 

수정할 데이터의 주소 받아오기

import { doc } from 'firebase/firestore';

const ref = doc(db, "컬렉션명", "문서명");

이렇게 변수로 받아두지 않고 아래의 updateDoc에 바로 doc(~)을 넣어줘도 된다.

하지만 진행한 프로젝트에서 같은 위치에 자주 접근하기 때문에 아예 const로 받아두었다.

 

 

업데이트하기

import { updateDoc } from 'firebase/firestore';

updateDoc(ref, { 변경할 필드의 key: 변경할 필드의 값 });
await updateDoc(ref, { 변경할 필드의 key: 변경할 필드의 값 });

위 처럼 사용하면 한 문서 내의 특정 필드를 수정할 수 있다.

 

 

참고자료

Firebase, Cloud Firestore에 데이터 추가

 

Cloud Firestore에 데이터 추가  |  Firebase

의견 보내기 Cloud Firestore에 데이터 추가 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 다음과 같은 몇 가지 방법으로 Cloud Firestore에 데이터를 쓸 수 있습니

firebase.google.com