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 คือ: การใช้วิธีดึงข้อมูล

  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