Документация не сильно помогла, поэтому я пришел сюда. Я пытаюсь добавить метаданные для своих сообщений в блоге, но не могу понять, как это сделать. Это сокращенный код моих статей/[slug]/page.tsx:
'use client';
import { useEffect, useState } from 'react';
import dynamic from 'next/dynamic';
import fetchBlogPosts from '../../../../pages/api/get_content';
import ArticleHeader from '@/app/components/articleHeader';
import { firestore } from '../../../../firestore';
import { collection, addDoc, query, where, getDocs, Timestamp } from 'firebase/firestore';
import 'react-quill/dist/quill.snow.css';
const ReactQuill = dynamic(() => import('react-quill'), { ssr: false });
type BlogPost = {
title: string;
description: string;
image?: string | null;
content: string;
slug: string;
tags: Array<{ name: string }>;
};
const ArticlePage = ({ params, }: { params: { slug: string } }) => {
};
export default ArticlePage;
Что мне нужно сделать, чтобы иметь динамические метаданные?
Вы можете использовать генерировать метаданные. В моем примере я установил динамические метаданные для страницы сведений о видео:
export const generateMetadata = async ({
params,
searchParams
}: {
params: { id: string };
searchParams: { id: string };
}) => {
const video: Video = await getVideo(params.id);
return {
title: video.title,
description: video.description,
keywords: video.tag
};
};
export default async function Detail(props: any) {
return <div>Video detail page</div>
}