error handling
객체를 배열로 담아서 데이터 꺼내오기
오연 : Oana
2022. 9. 9. 22:59
Firebase Real time Database에는 데이터가 객체 형태로 저장된다.
그래서 데이터들을 받아와서 반복문으로 map을 돌릴 수 없는 상황이 발생!
객체를 배열로 변경해서 꺼내오는 코드를 작성
const getAllPosts = async () => {
const response = await getAllPostsData();
// async 함수 내 빈 배열 생성
const allPostArray = [];
// for...in 문을 통해 새로운 객체로 담고,
for (const key in response) {
const postObject = {
id: key,
...response[key]
};
// 빈 배열에 push
allPostArray.push(postObject);
}
let orderedByRecentPost = allPostArray.sort((a, b) => {
return new Date(b.createdAt) - new Date(a.createdAt)
})
setPostData(orderedByRecentPost)
};