vue3 【自定义事件】mitt 实用教程 (可用于跨组件通信)

news/2024/10/11 7:25:54/

官网 https://github.com/developit/mitt

安装 mitt

npm i --save mitt

创建文件 src/emitter.js

import mitt from "mitt";export default mitt();

mitt 的核心语法

// 创建事件 foo
emitter.emit('foo', { a: 'b' })// 监听事件 foo
emitter.on('foo', e => console.log('foo', e) )// 监听所有事件
emitter.on('*', (type, e) => console.log(type, e) )// 移除事件 foo
emitter.off('foo', onFoo)  // unlisten// 移除所有事件
emitter.all.clear()

父组件

<script setup lang="ts">
import emitter from "@/emitter.js";
import Child from "./Child.vue";
import { ref, onMounted, onUnmounted } from "vue";let msg = ref("");onMounted(() => {// 组件加载时 -- 监听自定义事件 child_msgemitter.on("child_msg", (e: string) => (msg.value = e));
});onUnmounted(() => {// 组件卸载时 -- 移除自定义事件 child_msgemitter.off("child_msg");
});
</script><template><p>来自子组件的消息:{{ msg }}</p><Child />
</template>

子组件

<script setup lang="ts">
import emitter from "@/emitter.js";function sendMsg() {// 创建自定义事件 child_msgemitter.emit("child_msg", "你好");
}
</script><template><button @click="sendMsg">发送消息</button>
</template>

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

相关文章

公布一批脸书爬虫(facebook)IP地址,真实采集数据

一、数据来源&#xff1a; 1、这批脸书爬虫&#xff08;facebook&#xff09;IP来源于尚贤达猎头公司网站采集数据&#xff1b; ​ 2、数据采集时间段&#xff1a;2023年10月-2024年7月&#xff1b; 3、判断标准&#xff1a;主要根据用户代理是否包含“facebook”和IP核实。…

【漏洞复现】APP分发签名系统index-uplog.php存在任意文件上传漏洞

漏洞描述 APP分发签名系统index-uplog.php存在任意文件上传漏洞 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社会公德,不得利用网络从事危害国家安全、荣誉和利益,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵…

HashMap 面试题整理

HashMap 面试题整理 介绍下 HashMap 的底层数据结构 在 JDK1.7 和 JDK1.8 中有所差别&#xff1a; 在 JDK1.7 中&#xff0c;由“数组链表”组成&#xff0c;数组是 HashMap 的主体&#xff0c;链表则是主要为了解决哈希冲突而存在的。 在 JDK1.8 &#xff0c;由“数组链表红…

景区导览系统开发

景区导览系统的开发是一个综合性的项目&#xff0c;涉及多个领域的知识和技术&#xff0c;包括互联网、移动开发、数据库管理、地图导航、人工智能等。以下是一个详细的开发流程介绍&#xff1a; 一、需求分析 市场调研&#xff1a;了解当前旅游市场的趋势和游客的需求&#…

Java实现数据库图片上传(包含从数据库拿图片传递前端渲染)-图文详解

目录 1、前言&#xff1a; 2、数据库搭建 &#xff1a; 建表语句&#xff1a; 3、后端实现&#xff0c;将图片存储进数据库&#xff1a; 思想&#xff1a; 找到图片位置&#xff08;如下图操作&#xff09; 图片转为Fileinputstream流的工具类&#xff08;可直接copy&#…

Qt实现简易CAD软件的开发:技术解析与实现

文章目录 简易CAD软件的开发&#xff1a;技术解析与实现引言项目概述程序入口主窗口的实现主窗口类定义&#xff08;mainwindow.h&#xff09;主窗口类实现&#xff08;mainwindow.cpp&#xff09; 自定义绘图视图自定义绘图视图类定义&#xff08;myqgraphicsview.h&#xff0…

【WEB】ctfshow-萌新-web9-15

文章目录 题目介绍&#xff1a;题目分析&#xff1a;payload&#xff1a; 题目介绍&#xff1a; ctfshow-萌新计划-web9-15 <?php # flag in config.php include("config.php"); if(isset($_GET[c])){$c $_GET[c];if(preg_match("/system|exec|highlight…

编程小白如何成为大神?大学新生的最佳入门攻略

&#x1f4e2;博客主页&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01; &#x1f4e2;本文由 JohnKi 原创&#xff0c;首发于 CSDN&#x1f649; &#x1f4e2;未来很长&#…