WEB/재밌어서 만드는 것

[Firebase] javascript firestore CRUD하는 방법

자바칩 프라푸치노 2023. 7. 4. 15:26

GET

export const getList = async () => {
  const data = (await firebase.firestore().collection("MY_COLLECTION_NAME").get()).docs.map(
    (doc) => {
      return { ...doc.data(), id: doc.id };
    }
  );
  return data;
};

 

콜렉션을 만들고 그 콜렉션에 있는 모든 데이터를 가지고 오는 코드

id를 자동 생성으로 만들게 되면 data안에는 id가 안들어있어서 따로 map으로 붙여서 새로운 배열을 만들어줬다. 

 

 

GET BY ID

export const getItemById = async (id: string) => {
  const data = (
    await firebase.firestore().collection("MY_COLLECTION_NAME").doc(id).get()
  ).data();
  return data;
};

콜렉션 안에 특정 아이디만 뽑아내서 해당 데이터를 가져오는 코드

 

 

POST

export function postItem(content) {
  return firebase.firestore().collection("MY_COLLECTION_NAME").add(content);
}

 

콜렉션에 새로운 문서를 추가하는 코드

 

 

DELETE

export function deleteBucket(id: string) {
  return firebase.firestore().collection("MY_COLLECTION_NAME").doc(id).delete();
}

콜렉션에서 해당 아이디인 문서를 삭제하는 코드

 

 

UPDATE

export function completeBucket({ id, content }) {
  return firebase.firestore().collection("MY_COLLECTION_NAME").doc(id).update(content);
}

아이디에 해당하는 문서 중에서 필드 몇가지의 값을 업데이트 하는 코드

 

 

SET

export function completeBucket({ id, content }) {
  return firebase.firestore().collection("MY_COLLECTION_NAME").doc(id).set(content);
}

아이디에 해당하는 문서에 필드를 갈아끼우는 코드 

set은 여기서 파라미터로 들어온 값으로 아예 대체를 하고 update는 업데이트 하지 않은 필드는 그대로 두고 파라미터로 들어온 값만 수정함

 

 

 

 

 

 

 

 

728x90