const Details = ({ userData }) => {
return (
<Layout>
<h1>{userData?.header}</h1>
</Layout>
)
}
export default Details
export const getStaticPaths = async () =>{
const res = await fetch(`http://localhost:3000/api/blogs`);
const blogs = await res.json();
const ids = blogs.map((blog) => blog.id);
const paths = ids.map((id)=> ({params:{id: id.toString()}}));
return{
paths,
fallback:false,
};
};
export const getStaticProps = async (context) =>{
const res = await fetch(`http://localhost:3000/api/blogs/${context.params.id}`);
const userData = await res.json();
return{
props:{
data,
userData,
}
}
}
当npm run build
我的Next.js项目时,我在控制台中得到这样一个错误:
Error: Failed to collect page data from /blog/[id]
为什么会发生这种情况?
1条答案
按热度按时间iszxjhcz1#
因为你没有从任何API获取任何东西,所以你不需要远程获取任何东西,这就是为什么你会得到一个ECONNREFUSED错误。
更新
我在您的
/blog/*
文件夹中发现两个错误:/blog/[id].js
的第106行添加- 1
(见下文)/blog/index.js
的第131和132行/博客/[ID].js
/博客/索引.js