1

我收到此错误

Error: Error serializing `.remarkBody` returned from `getStaticProps` in "/blog/[slug]".
Reason: `undefined` cannot be serialized as JSON. Please use `null` or omit this value.

尝试运行时:

const body = blogPostCollection ? blogPostCollection?.items[0]?.body : ''

  const remarkBody = remark().use(strip).process(body, (err, file) => {
    if (err) throw err
    String(file)
  })

  return {
    props: {
      remarkBody: remarkBody,
    },
    revalidate: 1
  }

有人可以帮我弄这个吗?

4

2 回答 2

1

您不能传入undefined返回props的 from getStaticProps。相反,您可以尝试默认null发生这种情况。

return {
    props: {
        remarkBody: remarkBody ?? null,
    },
    revalidate: 1
}
于 2021-03-02T12:35:38.373 回答
1

也许您可以使用以下解决方法来绕过此问题:

export const getStaticProps = async (ctx) => {
const remarkBody = await getPropsFromAService()

return { props: JSON.parse(JSON.stringify(remarkBody)) }
}
于 2021-03-01T22:49:51.027 回答