【发布时间】:2021-11-20 07:40:07
【问题描述】:
我目前正在尝试使用 getStaticProps() 函数在我的 Next.js 项目中获取一些数据,但我继续收到此错误:
TypeError: 无法读取未定义的属性“地图”
我的代码如下所示:
export const getStaticProps = async () => {
const data = [
{
"id": 1,
"question": "Lorem ipsum dolor sit amet consectetur adipisicing elit.",
"answer": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Iste magni at magnam placeat. Non, saepe?"
},
{
"id": 2,
"question": "Lorem ipsum dolor sit amet consectetur adipisicing elit.",
"answer": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Iste magni at magnam placeat. Non, saepe?"
}
]
return {
props: {
questions: data
}
}
}
export default function FAQ({ questions }) {
return (
<div className="p-8 grid bg-blanco" >
<div className="grid place-content-center text-center mt-10 md:mt-0" >
<h1 className="text-2xl text-gun-rose-700 font-bold" >¿Tiene preguntas? Mira aquí</h1>
<h3 className="text-gun-rose-300 mt-4 max-w-2xl" >Lorem ipsum dolor sit amet consectetur adipisicing elit. Sunt, suscipit. Aliquid molestias eveniet ullam? Dolores, minus? Perspiciatis neque voluptates iste!</h3>
</div>
{questions.map(q => (
<div className="" key={q.id}>
<h3 className="">{q.question}</h3>
<p className="">{q.answer}</p>
</div>
))}
</div>
)
}
任何指导将不胜感激,在此先感谢:)
【问题讨论】:
-
您的
FAQ组件是页面吗?getStaticProps(和其他数据获取方法)只能从page component(在pages文件夹下)导出。 -
看来你是对的。是否有任何替代方法可以在组件内进行获取数据调用?
-
有两种选择:将数据获取移动到页面并将数据向下传递给组件,或者在组件内部的客户端获取数据。
标签: reactjs next.js getstaticprops