vue中的Bus/总线/发布订阅/观察者模式

本文深入探讨了Vue.js中的事件总线(Bus)概念,它是实现组件间通信的一种方式,基于发布订阅模式。通过创建一个全局实例,我们可以让不直接相关的组件通过发送和监听自定义事件进行通信,从而提高应用的灵活性。
摘要由CSDN通过智能技术生成
Vue.prototype.bus = new Vue();

    Vue.component("child",{
      template: '<div @click="handleClick">{{selfContent}}</div>',
      props: {
        content: String
      },
      data() {
        return {
          selfContent: this.content
        }
      },
      methods: {
        handleClick() {
          this.bus.$emit("change", this.selfContent);
        }
      },
      mounted() {
        this_ = this;
        console.log(this);
        this.bus.$on("change", function(value) {
          console.log("value:",value);
        });
      }
    });
    var app = new Vue({
      el: '#app',
      mounted() {
        this.bus.$on("change", function(value){
          console.log(value);
        })
      }
    });
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值