当前位置:首页 > uni-app

uniapp广播

2026-01-14 17:50:00uni-app

全局事件通信

在UniApp中实现广播功能可通过全局事件机制完成,适用于跨页面或组件通信。使用uni.$emituni.$onuni.$off等方法实现事件的触发、监听与移除。

发送广播(触发事件)

uni.$emit('eventName', { data: 'example' });

接收广播(监听事件)

uni.$on('eventName', (data) => {
  console.log('接收数据:', data);
});

移除监听
避免重复监听或内存泄漏,需在页面或组件销毁时移除:

uniapp广播

uni.$off('eventName');

页面间通信

若需特定页面间通信,可使用uni.navigateTo传递参数或利用uni.$emit结合页面生命周期。

通过URL传参

uniapp广播

uni.navigateTo({
  url: '/pages/targetPage?param=value'
});

目标页面接收参数
onLoad生命周期中获取:

onLoad(options) {
  console.log('参数:', options.param);
}

注意事项

  • 事件名需唯一,避免冲突。
  • 及时清理无用监听,防止内存泄漏。
  • 复杂数据建议使用Vuex进行状态管理。

示例场景

发送登录状态广播

// 登录成功后触发
uni.$emit('loginStatus', { isLogin: true });

多个页面监听登录状态

// 页面A
uni.$on('loginStatus', (status) => {
  console.log('登录状态更新:', status);
});

// 页面B
uni.$on('loginStatus', (status) => {
  this.isLogin = status.isLogin;
});

标签: uniapp
分享给朋友:

相关文章

uniapp多环境配置

uniapp多环境配置

多环境配置的必要性 在UniApp开发中,多环境配置能有效区分开发、测试、生产等不同环境的API地址、密钥等参数,避免手动修改代码导致的错误。 创建环境配置文件 在项目根目录下创建env.js或co…

uniapp 头条

uniapp 头条

uniapp 适配今日头条(字节跳动小程序)的方法 环境配置 确保HBuilderX版本在2.7.0以上,manifest.json中勾选"字节跳动小程序"平台。在开发者工具中配置正确的AppID和项…

uniapp招聘开源

uniapp招聘开源

uniapp招聘开源项目推荐 以下是一些基于uniapp的开源招聘类项目,适合开发者参考或二次开发: DCloud招聘模板 官方提供的招聘类应用模板,包含职位列表、详情、投递等功能。 支持多端发布…

uniapp如何调用

uniapp如何调用

uniapp调用方法 uniapp提供了多种调用方式,包括API调用、组件调用和插件调用。具体方法如下: API调用 uniapp内置了大量API,可以通过全局对象uni直接调用。例如调用网络请求A…

uniapp教程

uniapp教程

uniapp 入门基础 uniapp 是一个使用 Vue.js 开发跨平台应用的框架,支持编译到 iOS、Android、H5 以及小程序等多个平台。以下是快速入门的关键点。 环境搭建 安装 HBu…

uniapp和vue有什么区别

uniapp和vue有什么区别

核心区别 uniapp是一个基于Vue.js的跨平台开发框架,主要用于开发多端应用(如小程序、H5、App等),而Vue.js是一个专注于构建用户界面的渐进式JavaScript框架。 开发目标 u…