Local Emulator Suiteを使ってFirestoreのローカル開発を行う際に初期データ(seeds)を用意する

公開日時
更新日時

Firebase Local Emulator Suiteを使ってFirestoreのローカル開発を行う際に、初期データ(seeds)を用意したかったので対応方法を調べた。

export

yarn run firebase emulators:start

ローカルエミュレータを起動したあと、↓でローカルFirestoreの管理画面にアクセスできる。

http://localhost:4000/firestore

GUIでポチポチしながら手動でデータ登録を行う、もしくはDeveloperToolsを開くと window.firestore が利用可能になっているので

firestore.doc('sample_collection/test_id').set({ hello: "world" })

のようにしてコードでデータ追加ができる。地味に便利。

一通りの初期データが作成できたら↓で、現時点のデータを fixtures/local 以下にexportする。

yarn run firebase emulators:export fixtures/local

import

Emulator Suiteを一度停止して、次回からは↓のように import オプションを付与してエミュレータを起動するようにすると初期データがimportされた状態でFirestoreが起動する。

yarn run firebase emulators:start --import=fixtures/local

参考


Related #firebase

YouTubeの「Firebase Release Notes」プレイリスト

最新のアップデートの概要を把握するのにちょうど良い

Firebase Extensions

Functionsを実装する際の参考になる

Nuxt.jsのservice workerで環境変数を切り替えられるようにする

設定情報をハードコードしたくなかったので、ビルド時にnodeコマンドでファイル生成を行い環境変数を切り替えられるように対応した。