VueCLI核心知识3:全局事件总线、消息订阅与发布

这两种方式都可以实现任意两个组件之间的通信

1 全局事件总线

1.安装全局事件总线

javascript 复制代码
import Vue from 'vue'
import App from './App.vue'

Vue.config.productionTip = false


/* 1.第一种写法 */
// const Demo = Vue.extend({})
// const d = new Demo()

// Vue.prototype.x = d // 把Demo实例挂载到Vue的原型上,这样所有Vue实例都可以访问到x


new Vue({
  el: '#app',
  render: h => h(App),

  /* 2. 第二种写法 */
  beforeCreate() {
    Vue.prototype.$bus = this // 安装全局总线
  },
})

2.使用事件总线

(1).发送数据

(2).接收数据


总结:

2 消息订阅与发布

1.安装pubsub:npm i pubsub-js

2.引入:import pubsub from 'pubsub-js'

3.发送数据:

4.接收数据:

总结:

相关推荐
GISer_Jing7 小时前
Three.js着色器编译机制深度解析
javascript·webgl·着色器
丷丩7 小时前
MapLibre GL JS第22课:查看本地GeoJSON
前端·javascript·map·mapbox·maplibre gl js
油炸自行车7 小时前
Claude Code 错误:API Error: 400 Failed to deserialize the JSON body into the
开发语言·javascript·json·trae·claude code·api error 400
丷丩11 小时前
MapLibre GL JS第19课:实时更新要素
前端·javascript·gis·map·mapbox·maplibre gl js
xiaohua0708day12 小时前
Lodash库
前端·javascript·vue.js
万物皆对象66612 小时前
切换路由时页面空白问题(vue3)
前端·vue.js·typescript
突然好热12 小时前
TS 调试技巧
前端·javascript·typescript
h64648564h12 小时前
Flutter 国际化(i18n)全指南:一键切换中/英/日多语言
前端·javascript·flutter
丷丩13 小时前
MapLibre GL JS第8课:禁用滚动缩放
javascript·mapbox·maplibre gl js
李剑一14 小时前
小红书前端架构面试问的挺深入啊!面试官:Vue中组合式API与选项式API的设计权衡
vue.js·面试