Мета-теги
Управление мета-тегами, от Nuxt 2 до Nuxt 3.
Nuxt 3 предоставляет несколько способов управления мета-тегами:
- Через ваш nuxt.config.
- С помощью композабла useHead
- С помощью глобальных компонентов мета-тегов
Вы можете настраивать title, titleTemplate, base, script, noscript, style, meta, link, htmlAttrs и bodyAttrs.
В настоящее время Nuxt использует 
vueuse/head для управления мета-тегами, но детали реализации могут измениться.Миграция
- В nuxt.config, переименуйтеheadвmeta. Рассмотрите возможность перемещения этой общей конфигурации мета-тегов вapp.vue. (Обратите внимание, что объекты больше не имеют ключаhidдля устранения дубликатов.)
- Если вам нужен доступ к состоянию компонента с помощью head, вам следует мигрировать на использованиеuseHead. Вам также может быть полезно использовать встроенные мета-компоненты.
- Если вам нужно использовать Options API, есть метод head(), который вы можете использовать при использованииdefineNuxtComponent.
useHead
<script>
export default {
  data: () => ({
    title: 'Мое приложение',
    description: 'Описание моего приложения'
  })
  head () {
    return {
      title: this.title,
      meta: [{
        hid: 'description',
        name: 'description',
        content: this.description
      }]
    }
  }
}
</script>
Мета-компоненты
Nuxt 3 также предоставляет мета-компоненты, которые вы можете использовать для выполнения той же задачи. Хотя эти компоненты похожи на теги HTML, они предоставляются Nuxt и имеют схожую функциональность.
<script>
export default {
  head () {
    return {
      title: 'Мое приложение',
      meta: [{
        hid: 'description',
        name: 'description',
        content: 'Описание моего приложения'
      }]
    }
  }
}
</script>
- Убедитесь, что вы используете прописные буквы для этих имен компонентов, чтобы отличать их от нативных элементов HTML (вместо <title>). 
- Вы можете размещать эти компоненты в любом месте шаблона вашей страницы.
Параметры API
Nuxt 3 (Options API)
<script>
// если используется метод `head` Options API, необходимо использовать `defineNuxtComponent`
export default defineNuxtComponent({
  head (nuxtApp) {
    // `head` получает приложение nuxt, но не может получить доступ к экземпляру компонента
    return {
      meta: [{
        name: 'description',
        content: 'Это описание моей страницы.'
      }]
    }
  }
})
</script>