AIイノベーションズ

FirestoreのCRUD操作のJavaScriptコード

FirestoreのCRUD操作のJavaScriptコードを紹介。setDoc()、addDoc()、getDoc()、updateDoc()、deleteDoc()の使い方を解説。

以下に、元のドキュメントをさらに詳細かつ読みやすく改善したものを示します。 (この記事は更新中のため、ややおかしな部分があるかも)

このドキュメントでは、Firebase Firestoreを使用してデータを取得、作成、更新、および削除する方法を説明します。

FirestoreはNoSQLデータベースであり、データはコレクションとドキュメントの形式で格納されます。

以下のコードスニペットでは、JavaScriptを使用してFirestoreに対する基本的な操作を紹介します。

データを作成する

新しいドキュメントをコレクションに追加します。

ただし、データ作成には2つの方法があります。

setDoc()を使う:手動ID

import { setDoc, collection } from 'firebase/firestore';
 
// コレクション名
const collectionName = "foo";
 
// 新たに追加するドキュメントのID
const newDocId = "foofoo";
 
// 新たに追加するデータ
const data = {
  key1: "value 1",
  key2: "value 2"
}
 
// サブコレクションのドキュメントのレファレンス
const docRef = doc(db, collectionName, newDocId);
 
// setDoc()で追加する
await setDoc(docRef, data);

addDoc()を使う:自動ID付与

import { addDoc, collection } from 'firebase/firestore';
 
const docRef = collection(db, collectinName);
 
const data = {
  キー1: '値1',
  キー2: '値2',
};
await addDoc(docRef , data)

データを取得する

データを取得するには、まずドキュメントの参照を作成し、それを使用してデータを取得します。

import { doc, getDoc } from 'firebase/firestore';
 
// ドキュメントの参照を作成
const docRef = doc(db, 'コレクション名', 'ドキュメントID');
 
// ドキュメントのデータを取得
getDoc(docRef).then((documentSnapshot) => {
  if (documentSnapshot.exists()) {
    console.log('Document data:', documentSnapshot.data());
  } else {
    console.log('Document does not exist!');
  }
}).catch((error) => {
  console.error('Error getting document:', error);
});

データを更新する

既存のドキュメントを更新します。

import { updateDoc } from 'firebase/firestore';
 
// 既存のドキュメントを更新
updateDoc(doc(db, 'コレクション名', 'ドキュメントID'), {
  キー1: '新しい値1',
  // その他のフィールドの更新...
}).then(() => {
  console.log('Document successfully updated!');
}).catch((error) => {
  console.error('Error updating document: ', error);
});

データを削除する

既存のドキュメントを削除します。

import { deleteDoc } from 'firebase/firestore';
 
// 既存のドキュメントを削除
deleteDoc(doc(db, 'コレクション名', 'ドキュメントID')).then(() => {
  console.log('Document successfully deleted!');
}).catch((error) => {
  console.error('Error deleting document: ', error);
});

上記のコードスニペットは、Firestoreでの基本的なCRUD操作を示しています。

各操作は非同期で行われ、Promiseを使用して成功やエラーを処理します。

エラーハンドリングを適切に行うことで、より堅牢なアプリケーションを構築できます。

On this page