BLOG

Paakのスタッフが得た知見や情報を発信するブログです。
たまに会社の出来事に関する記事もお届けします。

firestore ドキュメントを追加順に並び替える方法

書き込み

 import firebase from 'firebase/app'
 import 'firebase/analytics'
 import 'firebase/auth'
 import 'firebase/firestore'
 
 firebase.initializeApp({
   apiKey: '<apiKey>',
   authDomain: '<authDomain>',
   projectId: '<projectId>',
 })
 const db = firebase.firestore()
 
 db.collection('<コレクション名>')
 .doc('<ドキュメント名>') //collection.add({})だとdocの指定はない
 .set({
   title: "タイトル1",
   category: "カテゴリ1",
   timestamp: firebase.firestore.Timestamp.fromDate(new Date()),// 追加日を登録する。追加順に並び替える際に必須
 })
 .then(() => {
 // 書き込み完了後のコード
 })
 .catch((error: any) => {
   console.error('Error adding document: ', error)
   alert('保存に失敗しました')
 })

読み込み(コードは書き込みの続き)

 db.collection('<コレクション名>')
   .orderBy('timestamp', 'asc') // 追加日昇順に並び替え
   .get()
   .then((querySnapshot: any) => { 
     querySnapshot.forEach((doc: any) => {
       console.log(doc.get('title'),doc.get('category'))// (タイトル1,カテゴリ1)
     })
   })

timestampを設定しないと自動生成されたドキュメントIDの順番に並び替えられてしまいます。
ドキュメントを追加した順に並び替える方法を探すのに少々時間がかかったのでメモ程度に。

CONTACT /

webサイトでお困りのことがあれば、お気軽にご相談ください。

お問い合わせはこちら

CONTACT /

Paakについて、案件のご相談、採用についてはお問い合わせフォームからご連絡ください。