#Uniapp:页面通讯 全局uni.$on(eventName,callback) && uni.$emit(eventName,OBJECT) && uni.$once(eventName,ca

发布时间:2024年01月24日

uni.$on(eventName,callback)

属性类型描述
eventNameString事件名
callbackFunction事件的回调函数

监听全局的自定义事件。

事件可以由uni.$emit触发,回调函数会接收所有传入事件触发函数的额外参数

<template>
	<view>
		bb:
		<text>{{num}}</text>
	</view>
</template>

<script>
	export default {
		name: "b",
		data() {
			return {
				num: 0
			};
		},
		created() {
			uni.$on('updateNum', val => {
				this.num = this.num + val
			})
		},
		methods: {

		}
	}
</script>

<style>

</style>

uni.$emit(eventName,OBJECT)

触发全局自定义事件

<template>
	<view>
		a组件 <button @click="getAddNum">修改b组件数据</button>
	</view>
</template>

<script>
	export default {
		name: "a",
		data() {
			return {

			};
		},
		methods: {
			getAddNum() {
				uni.$emit('updateNum', 10)
			}
		}
	}
</script>

<style>

</style>

uni.$once(eventName,callback)

监听全局的自定义事件。事件可以由 uni.$emit 触发,但是只触发一次,在第一次触发之后移除监听器。

uni.$off([eventName, callback])

移除全局自定义事件监听器。

文章来源:https://blog.csdn.net/weixin_47075554/article/details/135772106
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。