Как установить заголовок и мета nuxtjs из промежуточного программного обеспечения или плагина?

Как установить метатеги% заголовка NuxtJS из nuxt-middleware/nuxt-plugin?

в настоящее время я устанавливаю его из nuxt.config.js, как показано ниже.

  head: () => {
    const now = Date.now()
    return {
      title: `config test : ${now}`,
      meta: [
        {
          hid: 'description',
          name: 'description',
          content: 'My custom description'
        }
      ]
    }
  },

Обратите внимание, что я знаю, что могу установить аналогичные параметры в компоненте страницы. Я не хочу устанавливать функцию заголовка на каждой странице, вместо этого мне нужно общее место, где я могу динамически устанавливать заголовок с помощью экземпляра маршрутизатора. который находится в промежуточном программном обеспечении или плагине маршрутизатора.

1 ответ

Вы можете рассчитать информацию о голове в промежуточном программном обеспечении в зависимости от того, на каком маршруте вы находитесь. Затем вы можете сохранить эти данные в своем vuex или передать их как опору на страницу. На своей странице вы можете получить эти данные с помощью хука asyncData. Примером колкуляции головы может быть:

export default function ({ store, route }) {

      const headInfoCollection = [
        { name: 'home', title: "Home" },
        { name: 'about', title: "About" }
      ]

      const headInfo = headInfo.find(c => c.name === route.name)
      
      store.dispatch('setHeadInfo', headInfo)

}
Другие вопросы по тегам