Rumah  >  Soal Jawab  >  teks badan

Bagaimana untuk menyemak sama ada subkomponen dipasang dalam Vue?

Saya ingin menyemak sama ada komponen anak telah dipasang dan saya ingin mengalihkan maklumat tersebut ke komponen induk. Untuk ini saya menggunakan pelancaran. Jadi inilah contoh komponen induk saya:

<child @is-child-mounted="childMounted" />

export default {
  data() {
    return {
      childMounted: false,
    };
  },

  mounted() {
    if (this.childMounted) {
      //do something
    }
  },
}

Dalam komponen kanak-kanak saya menukar "is-child-mounted" kepada benar:

mounted() {
    this.$emit('isChildMounted', true);
  },

Tetapi jika (this.childMounted) masih palsu. Jadi bagaimana untuk menyemak komponen induk jika komponen anak dipasang?

P粉401527045P粉401527045297 hari yang lalu404

membalas semua(1)saya akan balas

  • P粉826283529

    P粉8262835292023-12-27 12:33:19

    Anda boleh menambah pendengar pada komponen anak bagi komponen induk. Ia kelihatan seperti ini:

    Vue3
          <Component
            @vnodeMounted="handleMounted"
          />
    
    Vue2
          <Component
             @hook:mounted="handleMounted"
          />
    

    Anda boleh menggantikan nama cangkuk dengan nama kitaran hayat yang anda mahu dengar! Saya bayangkan ia sepatutnya jarang digunakan, kerana ia tidak muncul dalam dokumentasi dan oleh itu merupakan API dalaman, yang ditakdirkan untuk tidak digunakan secara langsung.

    Sumber:

    balas
    0
  • Batalbalas