🔫

[Flutter×Firebase]QuerySnapshot、DocumentSnapshotとは

2022/01/25に公開約900字

やりたいこと

Flutter初学者向けの動画でSnapshotを使用し、Firestoreからデータを取得する動画を見かけたので、解説してみます。
【2021年8月最新】Firestoreのgetメソッドで値を取得しよう

例として、Firestoreにあるコレクション名は「coordinate」
データは「tops」とします。

QuerySnapshot

  • collection内を取得する際に使用
  • 「Query」という言葉が付いていることからイメージできるように、クエリの結果として得られるもの。

例(今回はクエリを使用しない)

final QuerySnapshot snapshot =
    await FirebaseFirestore.instance.collection('coordinate').get();

DocumentSnapshot

documentのデータを取得する際に使用。

final List<Coordinate> coordinate = snapshot.docs.map((
        DocumentSnapshot document) {
      Map<String, dynamic> data = document.data() as Map<String, dynamic>;
      final String tops = data['tops'];

今回使用した、プロパティ/メソッド

  • data()
    document のデータを返す
    データがなければ null が返ります。
  • get()
    Firestoreにあるデータを取得できる。

おわりに

動画はとても素晴らしい内容ですが、初学者にとっては鬼門だと思う部分が一部あったので、自分の理解も含めて解説してみました。
何か間違いなどありましたらコメントお願いします。
次回はMap型、dynamicについて深掘りできたらと思います。

Discussion

ログインするとコメントできます