Next.js Discord

Discord Forum

I m getting error in production build related to dynamic meta data generation based on param slug

Answered
Eared Trogon posted this in #help-forum
Open in Discord
Avatar
Eared TrogonOP
Here is the code to generateMetadata
export async function generateMetadata(
  { params, searchParams }: Props,
  parent?: ResolvingMetadata
  ): Promise<Metadata> {
    
  const slug = params.slug
  const post = getPostContent(slug);
  const previousImages = parent ? (await parent).openGraph?.images || [] : []
  
  return {
    title: post.data.title,
    description : post.data.description,
    openGraph: {
    images: [`${post.data.thumbnail}`, ...previousImages],
    },
  }
}


And here is the error which i m facing while building the app. It's working fine in development.

Type error: Type 'ResolvingMetadata | undefined' does not satisfy the constraint 'ResolvingMetadata'.
  Type 'undefined' is not assignable to type 'Promise<ResolvedMetadata>'.

  29 | if ('generateMetadata' in entry) {
  30 |   checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
> 31 |   checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
     |                                       ^
  32 | }
  33 |
  34 | // Check the arguments and return type of the generateStaticParams function
Answered by Eared Trogon
Problem solved. I changed my argument of generateMetadat to just (props : props)
View full answer

1 Reply

Avatar
Eared TrogonOP
Problem solved. I changed my argument of generateMetadat to just (props : props)
Answer