欢迎光临,了解微信小程序开发,就上易用通!

关于微信小程序wx.switchTab的问题

发布:2018-05-03 15:52浏览: 来源:网络 作者:cola

昨天做了个功能要从首页跳到tabBar页,并且要带上参数.首先我是这样做的: 
在index.js中:

 

				
  1. toCategory:function(event){
  2. var cate_id = event.currentTarget.dataset.cate_id;
  3. wx.switchTab({
  4. url: '../category/category?cate_id='+cate_id,
  5. });
  6. },

按照上面写的在category.js里得不到数据;

 

				
  1. onLoad:function(options){
  2. console.log(options);
  3. }

然后查看了下官方文档.  wx.switchTab(OBJECT)  跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面

关于微信小程序wx.switchTab的问题(图1)

接口调用结束的回调函数(调用成功、失败都会执行)可以看到url路径后不能带参数.这下就尴尬了.因为我必须要带一个参数过去才能满足业务的需求;走了一个捷径.思路:跳转的时候在全局变量里设置一个变量cate_id,调到category.js中后.调取全局变量里的cate_id,用完后,再把扎个变量清除掉.具体实施如下:  首页index.js中:

 

				
  1. toCategory:function(event){
  2. var cate_id = event.currentTarget.dataset.cate_id;
  3. app.globalData.cate_id=cate_id;//设置全局变量(app已经定义 var app=getApp())
  4. wx.switchTab({
  5. url: '../category/category'
  6. });
  7. },

分类页category.js中:

 

				
  1. onLoad:function(options){
  2. var that = this
  3. var cate_id=app.globalData.cate_id
  4. wx.request({
  5. url: app.globalData.httpsurl +'public/index.php?s=product/index',
  6. data:{
  7. cate_id:cate_id,
  8. },
  9. success:function(res){
  10. //清除全局变量cate_id
  11. app.globalData.cate_id=""
  12. that.setData({
  13. alldata:res.data,
  14. })
  15. }
  16. })
  17. },

上面的转化就可以完成业务逻辑的需要了.






免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。