vue组件通信

本文探讨了前端状态管理库Vuex在刷新后信息失效的问题,以及如何使用自定义的EventBus和Node.js的EventEmitter实现组件间通信。通过创建独立的事件总线和事件监听器,实现了不同页面之间的数据传递,同时也展示了在Node环境中类似的消息传递机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.vuex状态管理
刷新信息会失效。

2.bus事件
bus可以在同一个页面或其他页面之间通信。
(1)新建bus.js文件

import Vue from 'vue'
const bus = new Vue()
export default bus 

(2)发送信息

import bus from "@/assets/js/bus";
// 第一个参数为标志变量,第二个参数为通信的值
bus.$emit("message", "hello");

(3)接收信息

// 第一个参数为标志变量,第二个参数中的e为通信的值
bus.$on("message", e => {
	console.log(e);
});

3.nodejs之EventEmitter
用法跟bus类似。
(1)新建eventEmitter.js文件

import events from "events";
const eventEmitter = new events.EventEmitter();
export default eventEmitter

(2)发送信息

import eventEmitter from "@/assets/js/eventEmitter";
eventEmitter.emit("node", "hello,node");

(3)接收信息

eventEmitter.on("node", res => {
	console.log("nodeEvent", res);
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值