Rumah  >  Soal Jawab  >  teks badan

javascript - Dalam keadaan apakah kitaran hayat komponen sebelumDestory dicetuskan?

Bolehkah ia dicetuskan semasa menghalakan lompatan? Saya mendapati bahawa fungsi dalam beforeDestory tidak dicetuskan apabila saya membuat lompatan laluan, tetapi terdapat sekeping kod yang perlu dilaksanakan sebelum komponen itu dimusnahkan.
https://jsfiddle.net/44w37p34/ Seorang rakan baru sahaja menghantar demo kepada saya

天蓬老师天蓬老师2686 hari yang lalu1188

membalas semua(2)saya akan balas

  • 漂亮男人

    漂亮男人2017-07-05 10:48:40

    Saya dapati sebabnya saya menambahkan keep-alive ke router-view sebelum ini, menyebabkan komponen tersebut dicache, jadi beforeDestory dan destoryed tidak akan dicetuskan

    balas
    0
  • 習慣沉默

    習慣沉默2017-07-05 10:48:40

    Saya mencubanya, dan ia boleh mencetuskan pelaksanaan kaedah beforeDestroy apabila menukar laluan Contohnya adalah seperti berikut.

    const Home = {
            template: `
          <p>
          <p class="section">Some section foo</p>
          <p class="section">Some section foo</p>
          <p class="section">Some section foo</p>
          <p class="section">Some section foo</p>
        </p>
      `,
            mounted() {
               console.log("Home mounted");
            },
            beforeDestroy() {
                console.log("Home destroy");
            }
        };
    
        const Test = {
            template: `
                <p>
                  <p class="section">Some section test</p>
                  <p class="section">Some section test</p>
                  <p class="section">Some section test</p>
                  <p class="section">Some section test</p>
                </p>
      `,
            mounted() {
                console.log("Test mounted");
            },
            beforeDestroy() {
                console.log("Test destroy");
            }
        };

    balas
    0
  • Batalbalas