javascript - Bagaimana untuk mengemas kini data dalam $on dalam Vue2.0
欧阳克
欧阳克 2017-06-12 09:25:46
0
2
619

Oleh kerana ini adalah komunikasi antara bapa dan anak, saya mengikuti tutorial dalam talian untuk mencipta fail bus.js
import Vue daripada 'vue'
eksport lalai Vue() baharu

Log masuk.vue komponen pertama digunakan untuk $emit
this.usermsg ialah objek

 bus.$emit('usermessage', this.usermsg)
 this.$router.push({name: 'mine'})
 

Komponen pertama mine.vue digunakan untuk $emit
data() {

  return {
    userData: {},
  }
},
created() {
  bus.$on('usermessage', (usermsg) => {
    console.log(this.msg)
    console.log(usermsg.name)
    this.userData= usermsg
    console.log('mine接收到的usermsg')
    console.log(this.userData)
  })
  
  mounted() {
  console.log(this.userData)
  }

Data userData tidak akan ditukar dan tugasan tidak akan berkuat kuasa. Adakah ini menunjuk kepada yang salah? Atau saya tidak patut menukar tugasan seperti ini?

欧阳克
欧阳克

温故而知新,可以为师矣。 博客:www.ouyangke.com

membalas semua(2)
过去多啦不再A梦

Pertama sekali, mine.vue anda mesti dimulakan dahulu Selepas $on('usermessage'), kod yang berkaitan mencetuskan $emit('usermessage') sebelum menerima acara ini. Mengikut kod semasa anda, apabila anda memancarkan, mine.vue belum dimulakan sama sekali, jadi acara ini tidak dapat dipantau.
Kemudian, penunjuk ini betul kerana anda menggunakan fungsi anak panah untuk butiran, sila lihat isu penunjuk fungsi anak panah ini. (Walaupun saya tidak tahu apa yang anda mahu lakukan dengan ini.msg, jelas tiada mesej dalam data)
Selain itu, idea anda adalah untuk log masuk untuk mendapatkan maklumat pengguna dan memaparkannya di halaman mine.vue . Adalah disyorkan agar anda menggunakan vuex untuk menyimpan maklumat pengguna, supaya anda boleh Dapatkannya di halaman lain

三叔

Jawapan yang betul di tingkat atas;
Apabila melompat untuk log masuk, komponen lombong akan dimusnahkan Anda boleh mencetak sesuatu dalam kitaran hayat yang dimusnahkan untuk melihat sama ada ia betul. Dengan cara ini, apabila anda melompat ke lombong semula, kandungan di dalamnya akan dimulakan semula, supaya apa yang anda cetak akan sentiasa menjadi kandungan yang baru dimulakan dan belum dikendalikan.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan