通过 100+ 个技巧的集合学习 Nuxt!

useHead

useHead 自定义您的 Nuxt 应用中各个页面的 head 属性。

useHead 可组合函数允许您以程序化和响应式的方式管理 head 标签,由 Unhead 提供支持。如果数据来自用户或其他不受信任的来源,我们建议您查看 useHeadSafe

文档 > 入门 > Seo Meta 中阅读更多。

类型

useHead(meta: MaybeComputedRef<MetaObject>): void

以下是 useHead 的非响应式类型。

interface MetaObject {
  title?: string
  titleTemplate?: string | ((title?: string) => string)
  base?: Base
  link?: Link[]
  meta?: Meta[]
  style?: Style[]
  script?: Script[]
  noscript?: Noscript[]
  htmlAttrs?: HtmlAttributes
  bodyAttrs?: BodyAttributes
}

有关更详细的类型,请参阅 @unhead/vue

useHead 的属性可以是动态的,接受 refcomputedreactive 属性。meta 参数也可以接受返回对象的函数,以使整个对象具有响应式。

参数

meta

类型: MetaObject

一个接受以下 head 元数据的对象

  • meta: 数组中的每个元素都映射到一个新创建的 <meta> 标签,其中对象属性映射到相应的属性。
    • 类型: Array<Record<string, any>>
  • link: 数组中的每个元素都映射到一个新创建的 <link> 标签,其中对象属性映射到相应的属性。
    • 类型: Array<Record<string, any>>
  • style: 数组中的每个元素都映射到一个新创建的 <style> 标签,其中对象属性映射到相应的属性。
    • 类型: Array<Record<string, any>>
  • script: 数组中的每个元素都映射到一个新创建的 <script> 标签,其中对象属性映射到相应的属性。
    • 类型: Array<Record<string, any>>
  • noscript: 数组中的每个元素都映射到一个新创建的 <noscript> 标签,其中对象属性映射到相应的属性。
    • 类型: Array<Record<string, any>>
  • titleTemplate: 配置动态模板以自定义各个页面的页面标题。
    • 类型: string | ((title: string) => string)
  • title: 在各个页面上设置静态页面标题。
    • 类型: string
  • bodyAttrs: 设置 <body> 标签的属性。每个对象属性都映射到相应的属性。
    • 类型: Record<string, any>
  • htmlAttrs: 设置 <html> 标签的属性。每个对象属性都映射到相应的属性。
    • 类型: Record<string, any>