useHead

useHead 可定制 Nuxt 应用中各个页面的 head 属性。

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

阅读更多 Docs > Getting Started > 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>