微信小程序:数据存储、传值、取值详解
小程序界面传值
父级界面A界面
子级界面B界面
一、url传值
详细的配置参数可以查看,这里不再做过多的解释。
1. 正向传值A界面 –>B界面
用 navigator标签或 wx.navigator传值,A界面向B界面传id值
A界面获取id值传向B界面如果需要传多个参数, 用 & 链接即可
// 方法一navigator标签传值 <navigator url="/page/index/index?id=110" >传值</navigator> <navigator url="/page/index/index?id=110&username=jane&password=123456" >传值</navigator> // 方法二 wx.navigator标签传值单值、多值传递 wx.navigateTo({ url: '/page/index/index?id=' + id }) wx.navigateTo({ url: '/page/index/index?id=' + id +'&username='+ username+'&password='+ password })
B界面接受id值
/ 生命周期函数--监听页面加载 / onLoad: function (options) { var id = options.id; this.setData({ id:id, username:username, password:password, }) },
反向传值B界面 –>A界面
在B界面需要传值地方代码如下
var pages = getCurrentPages() // 获取栈中全部界面的, 然后把数据写入相应界面 var currentPage = pages[pages.length - 1] //当前界面 var prePage = pages[pages.length - 2] //上一个界面 var that = this prePage.setData({ id: that.data.id, })
在A界面需要接受B界面传过来值码如下这里要在onShow方法里面重新调用你的数据请求或是,为了验证是否传值成功,你可以打印验证 注由于你从B界面返回A界面使用了wx.navigateBack,所以当你回到A界面后onLoad、onReady方法不响应,onShow方法响应,所以这里你需要特别注意--生命周期
/ 生命周期函数--监听页面显示 / onShow: function () { //获取数据 this.gainData() // 打印你的传值 console.log("res==", this.data.res) },
二、本地储存 tips:本地数据存储的大小限制为 10MB
每个微信小程序都可能用到本地缓存数据,这里我们可以通过调用微信提供的方法wx.setStorage、wx.setStorageSync、wx.getStorage、wx.getStorageSync、wx.clearStorage、wx.clearStorageSync、实现对数据本地缓存、获取、清除。可参考微信小程序开发文档,查看详情。
在A界面获取数据并缓存到本地
wx.setStorageSync('user_info', dic);
在B界面获取数据并缓存到本地
var user_info = wx.getStorageSync("user_info") this.setData({ username: user_info.username });
从本地缓存中同步移除指定 key。这里具体使用同步或是异步需要根据你存储时的方法,或是同步清理本地数据缓存wx.clearStorageSync()
wx.removeStorageSync("user_info")
同理你可以在B界面传值在A界面取值,只不过这里你需要注意存储、获取的顺序,先存后取,否则你是拿不到值的。
三、全局的app对象
这里你需要在app.js文件,写好你要全局使用的数据
//用户数据 appData: { user_info:null, }
在你需要赋值的地方引用app,代码如下
var app = getApp(); app.appData.user_info = {"username""jane"};
在你需要取值的地方引用app,代码如下
var app = getApp(); var user_info = app.appData.user_info; this.setData({ username: user_info.username });
以上所述是长沙网络推广给大家介绍的微信小程序数据存储、传值、取值详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,长沙网络推广会及时回复大家的。在此也非常感谢大家对狼蚁SEO网站的支持!
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指