cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Bagaimana untuk mengendalikan sifat contoh menggunakan bas acara?

Menggunakan bas acara untuk komunikasi antara komponen adik-beradik,

Ini adalah salah satu komponen: qdb_list

clickChange:function(obj){
      Bus.$emit('change',obj);
      this.$router.push({path:'/qdb_change'});
    }

Selepas acara klik dicetuskan, ia akan melompat ke komponen qdb_change

Ini adalah komponen adik-beradiknya: qdb_change

import Bus from '../bus.js'
export default {
    name:'qdb_change',
    data:function(){
      return {
      newname:'',
      newstatus:'',
      newinstruction:'',
      text:'123456'
      }
    },
    created:function(){
      Bus.$on('change',obj=>{
      console.log(obj);
      this.newname=obj.qdb_name;   
      this.newstatus = obj.status;
      this.newinstruction = obj.instruction;
      });
    }
}

Semua operasi penugasan kepada atribut di sini tidak sah, dan hasilnya masih merupakan nilai kosong Bagaimana saya boleh menjadikannya berkesan?

Selain itu, setiap kali anda mengklik lompat dalam qdb_list buat kali pertama, console.log(obj) tidak akan keluar Adakah mungkin $on tidak memantau acara tersebut?

Tetapi apabila anda mengkliknya untuk kali kedua, dua console.log(obj) akan muncul Adakah ini bermakna bilangan pencetus acara Bas.$emit('change',obj) akan terus terkumpul?

天蓬老师天蓬老师2775 hari yang lalu608

membalas semua(2)saya akan balas

  • 仅有的幸福

    仅有的幸福2017-05-19 10:30:29

    Dua komponen anda adalah berbeza dan tidak dipaparkan pada masa yang sama, iaitu satu dicipta dan satu lagi dimusnahkan Dalam kes ini, bas acara tidak boleh digunakan, tetapi vuex harus digunakan untuk merealisasikan perkongsian data komponen. qdb_list page emit Pada masa itu, halaman qdb_change belum dibuat atau dilaksanakan Bagaimana kita boleh memantau pancaran yang dicetuskan Secara amnya, mod pemerhati adalah untuk menghidupkan dahulu dan kemudian memancarkan

    balas
    0
  • PHPz

    PHPz2017-05-19 10:30:29

    Bukankah kedua-dua laluan ini adalah komponen saudara

    balas
    0
  • Batalbalas