Инкрементная статическая регенерация (ISR) не работает на сайте NextJS, развернутом на Vercel
У меня развернуто несколько сайтов Vercel, и многие из них используют ISR для создания нового статического контента. Я работаю над новым сайтом, и по какой-то причине ISR не работает, когда я вношу изменения в свою CMS (Contentful).
Кто-нибудь знает, как устранить неполадки, почему это не работает? Ничто в моих журналах ошибок функций на Vercel не указывает на проблему.
Вот код компонента, где ISR не работает:
import React, { useLayoutEffect } from 'react'
import Layout from '@/components/layout/Layout'
import AdsHeader from '@/components/layout/AdsHeader'
import { getEntry, getSlugs, getEntries } from '@/lib/contentful'
import { blogPostMeta } from '@/lib/blog'
import BlogDrawer from '@/components/Blog/BlogDrawer'
import Post from '@/components/Blog/Post'
export default function BlogPostIndex({ post, posts }) {
const metaData = blogPostMeta(post);
return (
<>
<AdsHeader />
<Layout
pageTitle={post.fields.title}
headerTitle="Blog"
>
<Post post={post} posts={posts} metaData={metaData} />
</Layout>
<BlogDrawer posts={posts} />
</>
)
}
export async function getStaticProps({ params }) {
const post = await getEntry('post', params.slug);
const posts = await getEntries({
content_type: 'post',
'fields.slug[ne]': params.slug,
order: '-fields.date'
});
return {
props: {
post: post[0],
posts
},
revalidate: 10
}
}
export async function getStaticPaths() {
const slugs = await getSlugs('post');
const paths = slugs.map((slug) => ({
params: { slug: slug },
}));
return {
paths,
fallback: 'blocking'
};
}