vue-meta =› Как изменить информацию заголовка

У меня есть проект nuxtjs, страница которого открывается по URL-адресу типа server\posts\id. На этой странице я добавил head информацию, чтобы влиять на метатеги. Однако некоторые теги зависят от поста и должны заполняться динамически. Это кажется возможным только после загрузки данных в mounted. Как я могу добавить мета-манипуляции к mounted?


person Edgar Koster    schedule 17.04.2017    source источник


Ответы (2)


Кажется, вам нужно дополнительное свойство «данные». Если вы используете это в заголовке и обновите его позже, это изменит метаинформацию.

person Edgar Koster    schedule 17.04.2017

Правильный способ получить мета из API: используя метод fetch

  async fetch({ store, params }) {
    await store.dispatch('modules/item/get_item', params.article)
  },

Использовать вычисляемое:

  computed: {
    ...mapState('modules/item', {
      Item: (state) => state.data
    })
  },

и используйте nuxt head (vue-meta)

head() {
    return {
      title:
        this.$store.state.modules.general.info.name + ' / ' + this.Item.title,
      meta: [
        {
          hid: 'description',
          name: 'description',
          content:
            this.$store.state.modules.general.info.name +
            ' / ' +
            this.Item.seo_description
        },
  }
person Padavan    schedule 19.02.2020