在段塞之后生成新页面



我正在构建一个NextJS应用程序,目前我正在使用getStaticPathsgetStaticProps来构建静态页面,并对它们进行必要的请求。

因此,我想按照这个url:challenge/[slug]/构建所有页面,对于每个与id相对应的段塞,我想有一个这样的应用程序页面:challenge/[slug]/applications来存档,我在/pages/challenge中构建了一个文件[…段塞]

在该文件中,我有以下代码来处理静态生成:

export async function getStaticPaths() {
const response: any = await getPrograms()
const paths = response.results.map(result => {
return { params: { slug: [result.id.toString()] } }
})
return { paths, fallback: true }
}
export async function getStaticProps({ params }) {
const res = await getProgram(params.slug[0])
const stages = await getStages(params.slug[0])
return { props: { program: res, stages: stages }, revalidate: 1 }
}

此解决方案适用于/schallenge/[slug],但/cchallenge/[slug]/applications收到404,我如何为slug呈现特定的应用程序页面?

我试着在slug数组中添加第二个位置,但如果我这样做,我只能渲染/schallenge/[sslug]/applications,而不是/cchallenge/[sslug]

有什么建议吗?

谢谢!

首先,您需要创建一个名为[slug]FOLDER。然后,创建一个名为applications.jsFILE。最后,将代码复制并粘贴到该页面中。

__ challenge
|__ [slug]
|__ applications

在此页面中,您可以获取或设置slug作为所需参数。

最新更新