小程序打开新页面保留原页面并传递数据

在我写添加收货地址的时候,出现的这个问题,用过数据存储,页面跳转传值的方法,但是效果都不太理想,

 

然后通过查找发现这种方法不错,给大家分享一下,

这里通过使用官方提供的API   getCurrentPages()函数来进行数据传递,直接在新页面中获取源页面的setData对原页面中的数据进行操作

在点击提交之后返回到原页面,在原页面中的onshow函数中进行数据拿取并渲染就可以了

 

复制代码
 1 sub(){
 2     var that = this;
 3     var obj = {   //需要传递的数据
 4       "name":that.data.name,
 5       "tell":that.data.tell,
 6       "sex":that.data.xingb,
 7       "fenlei":that.data.fenl,
 8       "dizhi":that.data.buchong,
 9       "img_url":"https://z3.ax1x.com/2021/05/24/gvRJmj.jpg"
10     }
11     var pages = getCurrentPages();   //使用了官方API getCurrentPages()函数
12     var currPage = pages[pages.length - 1];   //当前页面
13     var prevPage = pages[pages.length - 2];   //原页面
14     prevPage.setData({
15       obj:obj     //直接操作原页面data中的obj
16     })
17     console.log(that.data.obj)
18     wx.navigateBack({
19       delta: 1      //返回上一个页面
20     })
21   }
复制代码

 

posted @   橙子汁z  阅读(530)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示