vue中js简单创建一个事件中心/中间件/eventBus

news/2025/3/20 2:59:31/

vue中js简单创建一个事件中心/中间件/eventBus

目录结构如下:
lu
eventBus.js

class eventBus {constructor() {this.events = {};}// 监听事件on(event, callback) {if (!this.events[event]) {this.events[event] = [];}this.events[event].push(callback);}// 发射事件emit(event, data) {if (this.events[event]) {this.events[event].forEach((callback) => {callback(data);});}}
}export default new eventBus();

test.vue

<template><div @click="onClick">test_1</div>
</template><script>
import eventBus from '@/tools/eventBus.js'export default {name: 'test_1',methods: {onClick() {eventBus.emit('test', '事件1的参数')eventBus.emit('test2', {name: 'xingyue',age: 18})}}
}
</script><style></style>

App.vue

<template><test />
</template><script>
import test from './view/test.vue'
import eventBus from './tools/eventBus.js'export default {name: 'App',components: {test,},mounted() {this.test();this.test2();},methods: {test() {eventBus.on('test', (data) => {console.log('首页接收test:', data)})},test2() {eventBus.on('test2', (e) => {console.log('首页接收test2:', e)} )}}
}
</script><style></style>

点击触发事件后在app.vue中接收到事件。
在这里插入图片描述


http://www.ppmy.cn/news/1580485.html

相关文章

[从零开始学习JAVA ] 泛型

前言&#xff1a; 本文将详细介绍之前我们在JAVA 中一直在讲的泛型&#xff0c;各位感兴趣的同学可以点击进来观看。 泛型&#xff1a; 泛型是一种编程概念&#xff0c;它允许在定义类、接口或方法时使用类型参数&#xff0c;这样可以在使用时指定实际的类型。通过使用泛型&a…

微软开源神器OmniParser V2.0 介绍

微软开源的OmniParser V2.0是一款基于纯视觉技术的GUI智能体解析工具&#xff0c;旨在将用户界面&#xff08;UI&#xff09;截图转换为结构化数据&#xff0c;从而实现对计算机屏幕上的可交互元素的高效识别和操控。这一工具通过结合先进的视觉解析技术和大型语言模型&#xf…

vue-router实现

实现一个简化版的 vue-router 可以帮助我们更好地理解 Vue 路由是如何工作的。Vue Router 主要的功能是基于浏览器的 URL 来管理组件的显示&#xff0c;能够根据 URL 变化切换不同的视图。下面是一个简化版的实现&#xff0c;用于帮助你理解基本的路由机制。 创建一个简单的 V…

Api架构设计--- HTTP + RESTful

Api架构设计--- HTTP RESTful 什么是RESTfulRESTful 设计原则RESTful 接口类型RESTful 状态码RESTful Uri设计原则Api传参&#xff1a;QueryString 和 UriPath RESTful和HTTP的区别注意事项 什么是RESTful RESTful&#xff08;Representational State Transfer&#xff09;是一…

Git使用和原理(3)

1.远程操作 1.1分布式版本控制系统 我们⽬前所说的所有内容&#xff08;⼯作区&#xff0c;暂存区&#xff0c;版本库等等&#xff09;&#xff0c;都是在本地&#xff01;也就是在你的笔记本或者 计算机上。⽽我们的 Git 其实是分布式版本控制系统&#xff01;什么意思呢&a…

STM32——GPIO介绍

GPIO(General-Purpose IO ports,通用输入/输出接口)模块是STM32的外设接口的核心部分,用于感知外界信号(输入模式)和控制外部设备(输出模式),支持多种工作模式和配置选项。 1、GPIO 基本结构 STM32F407 的每个 GPIO 引脚均可独立配置,主要特性包括: 9 组 GPIO 端口…

WordPress the_category与single_cat_title的区别

在wordpress网站主题开发用常会用到调用分类目录的名称&#xff0c;the_category与single_cat_title都可以调用出分类目录的名称。 <?php single_cat_title(); ?> <?php the_category(); ?>但是&#xff0c;不少人搞不清楚二者有什么区别&#xff0c;其实很简…

Python使用总结之Flask构建文件服务器,通过网络地址访问本地文件

Python使用总结之Flask构建文件服务器,通过网络地址访问本地文件 在 Web 开发中,静态文件(如图片、CSS、JavaScript)的管理是基础且重要的环节。Flask 提供的 send_from_directory 函数为开发者提供了灵活的文件服务解决方案。本文将详细解析其原理、用法及最佳实践。 一…