有同学在群里咨询,使用Uniapp开发微信小程序和APP应用,想实现后退时给上个页面传递参数,有没有办法呢?当然是有的,可以通过Uniapp的自定义全局事件来实现,今天丁老师教给你。
一、当前页
在后退的方法中,添加uni.$emit方式来实现。uni.$emit是自定义事件,可以触发全局任何页面,所携带的参数会传给监听器回调函数。
代码如下:
uni.$emit('get_back_params',{
'参数1':'aaa',
'参数2':'bbb',
});
uni.navigateBack();二、上一页(后退的页)
在后退的页面,使用uni.$on来接收自定义事件,包含自定义事件携带的参数。
onLoad(options){
uni.$on('get_back_params',function(data){
console.log('监听到get_back_params的事件,携带参数是:'+data);
})
}除了Uni.$on事件外,还可以使用uni.$once(eventName,callback)事件来接收,该事件与uni.$on的区别是,uni.$once只接收一次,接收到后就注销该事件,而uni.$on则是一直对事件进行监听,持续长久接收。
移除事件:
如果要移除uni.$on事件,可以使用uni.$off(eventName, callback)方式来移除某个全局事件监听。如果在使用uni.$off时没有传值,则默认移除应用内所有的自定义事件,uni.$off需要在onUnload中使用。
全文总结
通过使用uni.$on的方式,可以对包括页面、组件、nvue等对象进行参数值传递,实现包括后退传参数、跨对象传参数等功能。该事件兼容微信、抖音、支付宝等各种小程序、安卓APP、IOS APP、鸿蒙OS APP等全终端。但是在使用时,还需要注意及时销毁事件监听,以免占用系统资源。
Mongodb根据时间段范围查询数据的方法:(注意月份从0开始,0就是1月,1就是2月)Date方式查询time =2025.00.01 且time<=2025.11.31db.表.find({"time":{...
301永久跳转永久移动是一种http的状态码,表示该网页已永久重定向到新的url,这个平时比较常见的一种网站错误代码,但其实严格的说http 301从技术上来说其实不算错误,而更像是一种重定向的提示。如果你遇到了301错误,说明请求或访...
方式一、通用卸载命令openclaw uninstall --all --yes --non-interactive #如果不行,则执行 npx -y openclaw uninstall --all --yes --non-inter...
K8s,就是Kubernetes(库博内茨),是由Google发明创建的用于自动化部署、扩展和管理容器化的应用程序。很多人一直不太理解k8s到底是做什么的,以及在实际项目运行中的意义和作用到底有多大,今天丁老师就来介绍一下。K8s是做什...
fontawesome所有图标class类名单,适用于4.7.0版本。总计有593个图标class类(包含别名):fa-500pxfa-address-bookfa-address-book-ofa-address-cardfa-addre...
最近要在某单位内网部署项目,使用了lnmp来配置环境,软件安装成功,可安装后不管是打开ip地址还是默认站点,都提示nginx 403 forbidden,这是怎么回事呢?首先,已经出现了nginx 403提示,说明nginx是安装正常的。其...
国外很多VPS购买后,只有密码,没有登录账号,如何登录呢?我们以one.com为例,购买了VPS后,只能设置密码,但是用root,也无法登录,是怎么回事呢?查了官方文档,原来修改的VPS密码,不是root的,这个VPS默认的账号是admin...
软件介绍Basgito是基于Laravel框架的免费电子商务平台,可以快速搭建自己企业专属的电子商务交易平台,适用于中小型外贸企业。该电商平台拥有无头laravel商务(headless laravel commerce)的强大功能,可以快...