首页 > 其他分享 >前端消息中间件mitt实战开发运用

前端消息中间件mitt实战开发运用

时间:2024-09-10 09:25:18浏览次数:3  
标签:实战 mitt 消息中间件 add props 组件 import emitter

安装mitt

mpm i mitt

mitt工具

import mitt from 'mitt'
import { ref } from 'vue'

let emitter = mitt()
// 例子
let num = ref(0)

// 绑定事件
emitter.on('add', () => {
    console.log('add被调用了', num)
})
// 每隔1秒执行事件
setInterval(() => {
    // emitter.emit('add')
}, 1000)

setTimeout(() => {
    // 解绑事件
    emitter.off('add')
}, 5000)

export default emitter

引入到组件

import emitter from '@/utils/emitter'

父组件,引入通用组件,并传递消息主题

ImageUploader该组件是自定义的图片文件上传工具组件

msgItem是消息主题,子组件会获取该属性,并向该消息主题发送数据

  <el-form-item label="房间照片" prop="housePhoto">
      <ImageUploader msgItem="housePhotoMsgItem" />
    </el-form-item>

子组件(图片上传组件)

接收父组件的值

// 定义props  
const props = defineProps({  
    msgItem: {  
    type: String,  
    required: true, 
  },  
  // 其他props...  
}); 

发送数据

 emitter.emit(props.msgItem, commaSeparatedUrls.value)

父组件接收消息

emitter.on('housePhotoMsgItem', (value: string) => {
  ruleForm.housePhoto = value
  console.log('接收房间图片地址', ruleForm.housePhoto)
})
onUnmounted(() => {
  // 组件卸载之后,解绑事件
  emitter.off('housePhotoMsgItem')
})

如果父组件需要多次引入该子组件,只需要绑定不一样的消息主题,即可实现数据的获取。

标签:实战,mitt,消息中间件,add,props,组件,import,emitter
From: https://blog.csdn.net/weixin_73060959/article/details/142057268

相关文章

  • 最新扣子(Coze)实战案例:Coze触发器的用法,做一个运动提醒Bot,完全免费教程
    大家好,我是斜杠君。我的教程《AI应用开发系列教程之扣子(Coze)实战教程》正在免费开放中,如果想学习AI应用搭建,请关注公众号,获取免费教程。​最近有同学问,扣子(Coze)中的触发器如何使用。今天就和大家说说扣子平台触发器的使用方法。什么是触发器Coze平台的触发器功能允许你的B......
  • 实战项目01-icon图标修改
    修改项目图标引入图片资源,放入指定目录,覆盖掉之前图片即可目录:entry>src>main>resources>base>media图片:startIcon.png foreground.pngbackground.png  修改项目标题需要修改EntryAbility_label字段的值。同时因为项目没有做国际化语言配置,所以直接使用......
  • (java+Seleniums3)自动化测试实战
    一.web自动化测试基础密码的加密处理--是在前端JavaScript二.seleniumIDE录制打开火狐浏览器:点击寻找更多附加组件输入:选择:跳转:点击安装完成,打开之后是这个页面:录制一个新的测试用例在一个新的工程当中:点击第一个表示正在录制成功:三.......
  • k8s--实战入门
    NamespaceNamespace是kubernetes系统中的一种非常重要资源,它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离。默认情况下,kubernetes集群中的所有的Pod都是可以相互访问的。但是在实际中,可能不想让两个Pod之间进行互相的访问,那此时就可以将两个Pod划分到不同的n......
  • Python中的接口艺术:从概念到实战
    在软件开发的世界里,“接口”这个术语频繁出现,尤其是在面向对象编程(OOP)的领域中。它不仅是连接不同组件的桥梁,更是提高代码可维护性和可扩展性的关键。Python,作为一种动态类型语言,虽然没有像Java那样严格的接口定义,但通过一些技巧和设计模式,我们依然可以实现类似的功能。今天,就让我......
  • b站小土堆|Dataset类代码实战
    完整代码如下:fromtorch.utils.dataimportDatasetfromPILimportImageimportosclassMyData(Dataset):def__init__(self,root_dir,label_dir):self.root_dir=root_dirself.label_dir=label_dirself.path=os.path.join(self.ro......
  • 计算机毕业设计选题推荐-土地承包管理系统-Java/Python项目实战(亮点:数据可视化分析、
    ✨作者主页:IT研究室✨个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。☑文末获取源码☑精彩专栏推荐⬇⬇⬇Java项目Python项目安卓项目微信小程序项目......
  • 计算机毕业设计选题推荐-流浪动物领养管理系统-Java/Python项目实战(亮点:数据可视化分
    ✨作者主页:IT研究室✨个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。☑文末获取源码☑精彩专栏推荐⬇⬇⬇Java项目Python项目安卓项目微信小程序项目......
  • 阿里巴巴中国站商品搜索API返回值解析与实战
    阿里巴巴中国站(现通常指1688.com)是一个大型的B2B电商平台,为企业和商家提供商品交易、供应链服务等。然而,需要注意的是,阿里巴巴官方并不直接提供公开的API接口给所有开发者进行商品搜索等高级功能,这些服务通常需要通过官方合作伙伴计划或特定服务接口来获取。不过,为了回答你的问题,我......
  • 解密企业变革成功密码:基于能力规划的案例解析与深度实战指南
    在当今充满挑战的全球化和数字化时代,企业要想在竞争中胜出,不仅需要制定前瞻性的战略,还必须具备将这些战略转化为现实的能力。传统的战略执行方式往往难以应对市场的动态变化和内部复杂性,而基于能力规划(Capability-BasedPlanning,CBP)的方法则为企业提供了从理论到实践的系统化......