在Next.js 13
的app
目錄中,我在官方文件中看到他們已經放棄了舊的head方法而轉而使用元數據,我認為它只能在頁面或佈局上使用。
我想根據狀態值更改標題,我該怎麼做? 元資料中的物件位於元件外部,因此我無法引用它。
import type { Metadata } from 'next'; export const metadata: Metadata = { title: 'Home', description: 'Welcome to Next.js', }; export default function Page() { return '...'; }
如果您所說的「狀態」是指與「useState」類似的東西,那麼這是不可能的。因為
metadata
只適用於伺服器元件,而useState
只能在客戶端元件中使用。文檔說: p>對於普通頁面,您通常知道要傳回哪些元數據,因此
元資料
物件應該足夠了。如果頁面是動態的,則有generateMetadata
:下面是動態設定標題的範例: