微信小程序 Tab页切换更新数据
微信小程序 Tab页切换更新数据
微信小程序还处于内测阶段,最不方便的莫过于官方在不停的更新,前几天写的功能隔个几天忽然发现不能用了_(:зゝ∠)_
功能需求如下:
我在首页点击“5万以上”他会把跳转到买车页然后同时把“5万以上”这个筛选条件带到买车页。
之前navigator导航是可以跳转并携带数据的,但这一次官方更新加了个新东西-----switchTab,专门用来实现tab页的跳转,但禁止携带数据
那么如果还想要实现我们的效果只能用别的方法了
想了一下有两种思路
1、用数据缓存
2、用全局变量存储globalData
最终我用的是全局变量,原因是我先尝试数据缓存的时候用的onLoad,onLoad用于页面加载,就是说只有第一次打开这个页面他才会执行,之后不会再执行,也就第一次实现了效果之后都不会在做这个动作。当我尝试局部变量的时候一开始也用的onLoad当然也没实现然后我发现了onShow,onShow是每次显示这个页面的时候都执行操作成功的完成了效果,我没再试缓存但应该也是可以实现的
具体的实现:
1、首先需要在app.js里定义需要的全局变量
globalData:{ currentLocation:'北京', selectCondition:'', userInfo:null }
globalData里除了userInfo是小程序自带的另两个变量都是我定义的
2、在“首页”里点击“5万以上”之后做两个操作
一是修改全局变量selectCondition的值
二是跳转到买车页
需要在首页的.js里写:
var app=getApp();
然后在“5万以上”的点击事件里修改全局变量selectCodition的值
addSelectCondition:function(e){ var con=e.currentTarget.dataset.hi; app.globalData.selectCondition=con; console.log(app.globalData.selectCondition) wx.switchTab({ url: '../buycar/pickcar' }) }
这是整个function的内容,console之前就是修改全局变量的值
之后就是跳转到“买车”tab页的代码,用了wx.switchTab
3、在买车页的onShow函数里得到全局变量selectCondition并且赋值给我们data里早就定义好的变量,这样就可以在“买车”里调用这个“5万以上”的值了
成功,撒花
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
您可能感兴趣的文章:
- 微信小程序-切换tab页并且有数据携带
- 微信小程序之更新上一页数据(十二)
- 微信小程序实现滑动tab切换和点击tab切换并显示相应的数据(附源代码)
- 微信小程序中初始化完成自动切换到设定的tab页
- 基础问题:在一个 Activity 中定义的串口接收程序,如果 Activity 切换到其它 Activity 后还能接收到串口数据吗?
- 基础问题:在一个 Activity 中定义的串口接收程序,如果 Activity 切换到其它 Activity 后还能接收到串口数据吗?
- 【EntityFramework系列教程六,翻译】在ASP.NET MVC程序中使用EntityFramework对相关数据进行更新
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(4)-向现存写数据并响应时钟中断
- Enterprise Library 4.1数据访问应用程序块快速入门【5】在事务内执行多个更新程序
- EF更新,数据库值变化,前台页面并不变化,刷新也不变化,重新运行程序则变化----开发中遇到的问题(已解决)
- ViewPager+Fragment切换时无法更新数据问题解析(源代码分享)
- 用LINQ to SQL 进行数据访问、更新和删除(附Demo示例程序下载)
- Android实现微信、QQ的程序前后台切换
- [笔记]关于fragment切换更新数据问题
- 基于libUSB的USB设备固件更新程序(下载数据)(转)
- 基础问题:在一个 Activity 中定义的串口接收程序,如果 Activity 切换到其它 Activity 后还能接收到串口数据吗?
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(4)-向现存写数据并响应时钟中断
- [原]用c#做了一个桌面程序用来分离excel文件里的数据时出现“操作必须使用一个可更新的查询”错误的解决
- 第三方程序与Viz Engine交互并获取数据的几个命令(持续更新中)
- 本博客停止更新,请订阅“大数据在线”微信公共号