vue中$emit與$on和BUS


vue中$emit與$on和BUS

bus

//vue原型鏈掛載總線
Vue.prototype.bus = new Vue();

//子組件發送數據
this.bus.$emit("change",data);

//子組件接收數據
this.bus.$on("change",function(data){
})

vue中$emit與$on

var Event = new Vue();

  • 相當於又new了一個vue實例,Event中含有vue的全部方法

Event.$emit('msg',this.msg);

  • 發送數據,第一個參數是發送數據的名稱,接收時還用這個名字接收,第二個參數是這個數據現在的位置
vent.$on('msg',function(msg){  
    //這里是對數據的操作
  })
  • 接收數據

    • 第一個參數是數據的名字,與發送時的名字對應
    • 第二個參數是一個方法,要對數據的操作
  • 需要注意的是接受數據的時候(例如mounted)會有this作用域問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM