小程序角标的添加以及绑定购物车数量进行实时更新

首先介绍一下角标的方法:

  // tabBer角标   index代表的是第几个tabber    text表示角标内容
        wx.setTabBarBadge({
    
     
           index: 2,						
           text: '1'			
        })
     }
     {
    
    
        wx.removeTabBarBadge({
    
        //移除指定位置的tabbar右上角的标志
           index: 2,
        })

接下来介绍怎么实现绑定购物车数量进行实时更新:
这里的话代码在App.js里,这是因为我的tabbar底部的是需要填充数量,所以为了实时监听,我在APP.js里面做了如下操作

  //首先定义了一个方法
  timer: false,
  scanCart: function () {
    
    
  //我把购物车里面的数据都塞到了缓存里,取名cart,任何一项修改购物车的行为,都会先取购物车的缓存,在重新更新缓存里的购物车参数
  //购物车
     var cart = wx.getStorageSync("cart");
     //统计购物车商品的总数量(我们需要的是总数量而不是具体的,如果要具体的话需要for循环:
			   for (var index in cart) {
    
    
			   //注意:这里的num是后端返回的数据里的值,各不相同,这里我用num展示
         cartnumber += cart[index].num
      }

)
     var cartnumber = cart.length; //购物车里的数量
     
    
     
     if (cart.length) {
    
       //判断购物车的数量个数,购物车如果为空就走else
    // tabber角标   index代表的是第几个tabber    text表示角标内容

        wx.setTabBarBadge({
    
     //购物车不为空 ,给购物车的tabar右上角添加购物车数量标志
           index: 2,						//标志添加位置
           text: ""+cartnumber + ""				//通过编译,将购物车总数量放到这里
        })
     } else {
    
    //购物车为空
        wx.removeTabBarBadge({
    
        //移除指定位置的tabbar右上角的标志
           index: 2,
        })
     }
  },

然后在App.js里的onLaunch写入:

  var that = this;
    //初始化购物车
    that.timer = setInterval(function () {
    
    
       that.scanCart(that)
    }, 100);
    that.scanCart(that);

猜你喜欢

转载自blog.csdn.net/wsxDream/article/details/110669299