目录

chen 的个人博客

VX:ZzzChChen
Phone:13403656751
Email:zxydczzs@gmail.com

X

uni-app watch监听事件使用说明

一、位置

watch 监听事件和 data、onLoad、onShow 等同级

二、具体语法

 1		watch: {
 2			addOrUpdateSceneDeviceComplete: {
 3				handler: function() {
 4					if(this.addOrUpdateSceneDeviceComplete == 2){
 5						uni.showLoading({
 6							title: '处理中...'
 7						})
 8					}
 9					if(this.addOrUpdateSceneDeviceComplete == 1){
10						uni.hideLoading();
11						uni.showToast({
12							title: '添加成功',
13							icon: 'none',
14							duration: 500
15						});
16						setTimeout(() => {
17							// 你要执行的函数
18							uni.navigateBack();
19						}, 1000);
20					}
21				},
22				deep: true,
23				immediate: true
24			}
25		},

三、参数说明

addOrUpdateSceneDeviceComplete:自定义的变量名称,由于我监听的是一个变量,所以这里也需使用变量名称。

handler:当监听到的变量发生变化时,会执行 handler 函数。

deep:进行深度监听。

immediate:如果我们需要在最初绑定值的时候也执行函数,则就需要用到 immediate 属性。

四、举例

我的业务是一个批量添加的操作,过程可能会耗时,所以需要做一个等待操作完成的功能。

所以我写了个变量,初始值为 0,当业务逻辑开始时,将变量设置为 2,操作完成后,变量设置为 1。

这样就可以在监听的时候判断变量如果是 2,那么执行加载中或处理中的提示,而操作完成后变量为 1 时,就停止 loading,提示操作成功等操作。


标题:uni-app watch监听事件使用说明
作者:zzzzchen
地址:https://dczzs.com/articles/2021/05/26/1621999025845.html