Закажите документы firestore по новейшим первым

# #javascript #reactjs #google-cloud-firestore

Вопрос:

Так что в основном я добавляю такие документы, как этот:

 db.collection('posts').add({
                name: usernameFinal,
                photoUrl: photoFinal,
                text: caption,
                imageUrl: imageUrl,
                isPost: true


      }); 

Затем я сопоставляю все документы.

 {posts.map(({id, post}) => {
            if(post.isPost == true){
              return <Post
              key={id}
              id={id}
              name={post.name}
              photoUrl={post.photoUrl}
              text={post.text}
              imageUrl={post.imageUrl}
      
              
      
              />
            }
    
  }
 

Но когда я составляю карту, она не в порядке. Итак, как я могу либо добавить документы по порядку, либо сопоставить их по порядку?

Ответ №1:

В Firestore нет никаких неявных данных о заказе/времени документа, поэтому, чтобы разрешить описанный вами заказ, вам необходимо будет Timestamp указать поле в каждом документе.

Как только у вас появится такое поле (скажем createdAt ), вы можете заказать его, когда получите данные, позвонив по телефону:

 db.collection('posts').orderBy('createdAt', 'desc')