You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否在Next.js旧pages路由(Next 13前)中使用新Metadata Object?

能否在Next.js Pages路由中使用新的Metadata Object?
  • 结论:不可以。Next.js 13+推出的新Metadata Object(包括metadata导出、generateMetadata函数等)是专门为App Router设计的特性,Pages Router(即Next 13.*之前的旧路由结构)并不支持该API。

  • Pages Router对应的元数据实现方式:

    • 使用next/head组件:在页面组件中导入并直接渲染<Head>标签,添加title、meta等元素
      import Head from 'next/head'
      
      export default function Home() {
        return (
          <>
            <Head>
              <title>首页标题</title>
              <meta name="description" content="页面描述" />
            </Head>
            {/* 页面内容 */}
          </>
        )
      }
      
    • 在数据获取函数中配置:如果使用getStaticProps或getServerSideProps,可以返回head字段来动态设置元数据
      export async function getServerSideProps() {
        return {
          props: {},
          head: {
            title: '动态生成的标题',
            meta: [
              { name: 'description', content: '动态生成的描述' }
            ]
          }
        }
      }
      
    • 全局配置:在_document.js中通过自定义<Html>或<Head>标签设置全局通用的元数据

内容的提问来源于stack exchange,提问作者Melvin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 04:47:33