位置: IT常识 - 正文

[uniapp] 跨页面传值 uni.$emit 和 uni.$on 的使用方法 以及遇到的坑(uniapp跨域解决方案)

编辑:rootadmin

推荐整理分享[uniapp] 跨页面传值 uni.$emit 和 uni.$on 的使用方法 以及遇到的坑(uniapp跨域解决方案),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp跨平台,uniapp 页面之间传递数据,uniapp跨端,uniapp跨端,uniapp页面间传值,uniapp跨端,uniapp页面间传值,uniapp 跨页面传值,内容如对您有帮助,希望把文章链接给更多的朋友!

uni.$emit 和 uni.$on 是uniapp自带的跨页面传值   

vue 父子通讯可以用 props  this.$emit   这种简单的父子通讯紧适用于 页面和组件 或者 组件之间的传值,他并不适用于页面和页面的互相传值

那要实现页面通讯呢,我们一起来看看uni.$emit 和 uni.$on的使用方法

示例:

        A页面在 onload 中使用   uni.$on('自定义名称',function(data){}   接收   data为接收到的值

        B页面在事件中  使用    uni.$emit('自定义名称',{属性名称 : 属性值}) 并搭配使用 uni.navigateBack 跳回A页面     A页面的自定义名称要和B页面的自定义名称相同

代码:

        A    页面

// A 页面export default { data(){ return{ }; }, onload(){ uni.$on('add',function(res){ console.log(res.listData) // 为 B 页面传过来的值 )} },}

        B   页面

// B 页面export default { data(){ return{ listData:[1,2,3,4,5] }; }, methods:{ jump(){ uni.$emit('add',{listData:this.listData}) uni.navigateBack({ delta: 1 }); }, },}

这样就实现的页面和页面之间的通讯    

[uniapp] 跨页面传值 uni.$emit 和 uni.$on 的使用方法 以及遇到的坑(uniapp跨域解决方案)

但是  但是  但是 (重点!!!敲黑板)

 uni.$emit 和 uni.$on 都属于全局跨页面传参

所以在A页面  在 onUnload 周期 添加移除监听事件

  uni.$off('自定义名称');

// A 页面export default { data(){ return{ }; }, onload(){ uni.$on('add',function(res){ console.log(res.listData) // 为 B 页面传过来的值 )} }, onUnload() { // 移除监听事件 uni.$off('add'); },}

以上就解决了uniapp 跨页面传参

下面和大家分享一下  博主在使用uni.$emit 和 uni.$on 遇到的大坑

A页面 和 B 页面同时都 调用了 C页面 并且使用了uni.$on 并且名字是一样的

C页面 返回是方法  使用了  uni.$on 同时也使用了 uni.navigateBack 

A页面代码   

// A 页面export default { data(){ return{ }; }, onload(){ uni.$on('add',function(res){ console.log(res.listData) // 为 C 页面传过来的值 )} }, onUnload() { // 移除监听事件 uni.$off('add'); }, methods:{ // A 页面 跳转B页面 jumpB(){ uni.navigateTo({ url:'B' }) }, // A 页面 跳转C页面 jumpC(){ uni.navigateTo({ url:'C' }) }, },}

B页面代码

// B 页面export default { data(){ return{ }; }, onload(){ uni.$on('add',function(res){ console.log(res.listData) // 为 C 页面传过来的值 )} }, onUnload() { // 移除监听事件 uni.$off('add'); }, methods:{ // B 页面 跳转C页面 jumpC(){ uni.navigateTo({ url:'C' }) }, },}

C 页面

// C 页面export default { data(){ return{ listData:[1,2,3,4,5] }; }, methods:{ jump(){ uni.$emit('add',{listData:this.listData}) uni.navigateBack({ delta: 1 }); }, },}

  当A页面跳B页面   B页面跳到C页面          在A页面跳转到B页面然后B页面跳转到C页面  C页面修改完数据之后 AB页面的值都发生了改变

解决方法:AB页面的名称都一样   所以数据渲染混乱   这个时候把名字改成对应的就好了,

创作不易   如果对您有帮助 请留下赞再走吧

本文链接地址:https://www.jiuchutong.com/zhishi/297282.html 转载请保留说明!

上一篇:Cursor!!!GPT-4帮我写代码

下一篇:谷歌浏览器被hao123网页(或其他网页)劫持了,怎么办?(已解决)(谷歌浏览器被hao123锁定改不了)

  • 吸收合并需要编制报表吗
  • 财务报告与财务报表的联系与区别
  • 合并报表调整分录理解
  • 长期待摊一般摊几年
  • 银行网银服务费做什么科目
  • 工会筹备金免征政策
  • 属于劳务分包合同
  • 资产减值测试是什么意思
  • 土地增值税清算规程实施细则
  • 建安企业企业所得税核定
  • 公司向个人转款备注备用金合法吗
  • 出口退税的发票怎么做账
  • 确认以前年度收入怎么做账
  • 原材料没发票能结转成本吗?
  • 冲减预付账款怎么记账
  • 销售货物或者提供应税劳务、服务清单怎么开
  • 运输发票抵税多少个点
  • 营业账簿印花税包括什么
  • 推广费是广告费和业务宣传费吗
  • 进口发票怎么认证
  • 视同销售如何纳税调整?
  • 购买不需安装的生产设备会计分录
  • 公益性捐赠税前扣除资格认定程序
  • 笔记本恢复出厂设置后和新的一样吗
  • 苹果微信语音怎么调成喇叭
  • 建筑公司购买材料需要写备注
  • 利润表营业成本是负数是什么原因
  • 劳务费和合同如何分配
  • 公司帐户能直接转账吗
  • u盘安装pe系统
  • KunlunPlatform.exe是什么进程?KunlunPlatform.exe是安全的程序吗?
  • PHP:session_module_name()的用法_Session函数
  • uniapp引入bootstrap
  • 小程序自定义tabbar创意动画
  • ros入门21讲
  • 福利费入账要求
  • critical_section 结构
  • thinkphp百万级数据查询
  • 有形动产租赁个税是经营所得吗
  • 废品损失科目的账户结构
  • 增值税政策执行口径存在的问题及建议
  • python中np.array用法
  • 付国外专利费用需办什么手续
  • 合伙人退伙后对退伙后的债务承担责任吗
  • mysql怎么修改
  • 用商品抵债的分类有哪些
  • 公司法人往公司账户打钱怎么能换回来
  • 农产品收购发票使用范围
  • 无形资产减值准备借贷
  • 公司注销时财务报表要注意什么
  • 税控盘反写是不是说明税都已经成功申报了
  • 企业领用产品的会计分录
  • 零余额帐户如何转出
  • 企业收到加盟费怎么开发票
  • 建账要求
  • 人工费用和管理费用比例
  • 投资其他公司做什么科目
  • 电子支付支付是什么意思
  • 增值税年末一定要结转吗
  • 管理费怎么扣除
  • 收到??
  • win7删除系统文件
  • Windows Server 2008脱机文件配置攻略
  • 无法ping通虚拟机
  • 无人值守安装操作系统
  • win7旗舰版系统激活密钥
  • ubuntu的终端在哪
  • win7的屏幕键盘
  • freelibrary 程序崩溃
  • javascript+
  • jquery禁止点击事件
  • java iterate()用法
  • python的pip安装命令
  • javascript常用的数据类型有哪些
  • 湖北税票真伪查询
  • 支付宝申领失业金申请审核多久
  • 棚户区改造的回迁房可以交易吗?
  • 浙江省税务师事务所排名
  • 税收征收管理与税收大数据分析
  • 置换买新车划算吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设