【发布时间】:2021-05-09 20:40:33
【问题描述】:
我对 Next.js 非常陌生,无法让 getStaticProps 正常工作。
import firebase from '../firebase'
export default function Home({ posts }) {
return (
<div>
<h1>All Posts</h1>
{posts.map((post) => (
<div key={post.pid}>{post.title}</div>
))}
</div>
)
}
export const getStaticProps = async () => {
let posts = []
firebase
.firestore()
.collection('posts')
.orderBy('createdAt', 'desc')
.get()
.then(function (querySnapshot) {
querySnapshot.forEach(function (doc) {
console.log(doc.data().title)
console.log(doc.data().pid)
posts.push({
pid: doc.data().pid,
title: doc.data().title,
})
})
console.log(posts)
})
.catch(function (error) {
console.log('Error getting documents: ', error)
})
return {
props: {
posts,
},
}
}
当我在getStaticProps 中console.log(posts) 时,我可以看到帖子,但不知何故它没有显示在主页组件中。任何帮助将不胜感激。
【问题讨论】:
标签: javascript reactjs google-cloud-firestore next.js