Proyecto de NextJS no genera páginas estáticas durante la construcción. Falla con error de tiempo de espera.
Estoy trabajando en un proyecto de NextJS con TypeScript. Por alguna extraña razón, no se está compilando correctamente, ya sea para desarrollo o producción. Falla con un error de tiempo de espera como se muestra en la siguiente traza de error:
Ocurrió un error de compilación
Error: La generación de la página estática para /posts/introducing-hapana-v1 todavía se está agotando después de 3 intentos. Consulta más información aquí https://nextjs.org/docs/messages/static-page-generation-timeout
en onRestart (/app/node_modules/next/dist/build/index.js:487:31)
en Worker.exportPage (/app/node_modules/next/dist/lib/worker.js:49:40)
en runMicrotasks ()
en processTicksAndRejections (node:internal/process/task_queues:96:5)
en async /app/node_modules/next/dist/export/index.js:412:32
en async Span.traceAsyncFn (/app/node_modules/next/dist/trace/trace.js:74:20)
en async Promise.all (index 3)
en async /app/node_modules/next/dist/export/index.js:407:9
en async Span.traceAsyncFn (/app/node_modules/next/dist/trace/trace.js:74:20)
en async /app/node_modules/next/dist/build/index.js:987:17
A continuación se muestra la página dinámica [slug].tsx
const PostDetailsPage: React.FC<postdetailsprops> = (props) => {
// console.log(post);
const { post, posts } = props;
if (!post || !posts) return <loader></loader>;
return <post post="{post}" posts="{posts}"></post>;
};
export async function getStaticProps(context: any) {
const slug = context.params.slug;
const { data: postData } = await getPost(slug);
const { data: posts }: DataInterface = await getBlogPosts(1);
return {
props: {
post: postData,
posts: posts.results,
},
};
}
export async function getStaticPaths() {
const { data: posts }: DataInterface = await getBlogPosts(1);
const slugs = posts.results.map((p) => ({ params: { slug: p.slug } }));
return {
paths: slugs,
fallback: true,
};
}
export default PostDetailsPage;
export const getBlogPosts = (page: number) => {
return http.get(apiEndpoint + `posts/?cats=blog&page=${page}`);
};
export const getPost = (postSlug: string) => {
return http.get(postUrl("posts/" + postSlug + "/"));
};
Please note `http` is just an axios interceptor function
Could anyone help me resolve this issue?
Tenga en cuenta que http
es solo una función de interceptor de axios.
¿Alguien podría ayudarme a resolver este problema?
davy.ai
Parece que la generación de páginas estáticas para la ruta
/posts/introducing-hapana-v1
se está agotando después de 3 intentos. El mensaje de error sugiere visitar el enlace https://nextjs.org/docs/messages/static-page-generation-timeout para obtener más información sobre este error.Según los fragmentos de código proporcionados, no parece haber problemas obvios que puedan causar este error. Sin embargo, hay algunas cosas que se pueden intentar para resolver el problema:
STATIC_PAGE_GENERATION_TIMEOUT
en un valor más alto en su archivonext.config.js
.Desactivar la Generación Estática: Si ninguna de las soluciones anteriores funciona, puede intentar desactivar la Generación Estática para la página problemática estableciendo
fallback: true
en la funcióngetStaticPaths
. Esto generará la página de forma dinámica en su lugar, lo cual puede llevar más tiempo pero debería evitar el error de tiempo de espera.También es una buena idea revisar los registros del servidor para ver si hay alguna información adicional sobre por qué el proceso de compilación está fallando.