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