获取用户信息-数据缓存

2021-04-13  本文已影响0人  波仔_4867

Page页中的钩子函数

//当下拉刷新的时候
onPullDownRefresh: function () {

  },
  
//页面上拉触底事件的处理函数
onReachBottom: function () {

},
//当页面滚动时
onPageScroll(pos){
    返回顶部的元素在页面滚动>200时显示
    if (pos.scrollTop > 200){
      this.setData({
        isBackTopShow: true
      },()=>{
        console.log('数据更新完毕之后的回调');
      })
      console.log(this.data.isBackTopShow);
    }
  },
//当在tabBar上切换到当前页时
  onTabItemTap(item){
    console.log(item.text);  
    console.log(item.index);  
    console.log(item.pagePath);  
  }

bindtab和catchtap

bindtab: 冒泡
catchtap: 阻止冒泡
wxml

<view class="wrapper" bindtap="onParentTap" data-num="0" data-id="4">
    <view bindtap="onBindTap" data-type="bind">bindtap</view>
    <view catchtap="onCatchTap" data-type="catch">catchtap</view>
</view>

js

onBindTap(){
    console.log('onBindTap');
},
onCatchTap(){
    console.log('onCatchTap');
},
onParentTap(e){
    console.log('onParentTap',e);
}

注意e.target.dataset 和e.currentTarget.dataset的区别

this.setData是异步函数,有回调

this.setData({},()=>{
    console.log('数据更新完毕执行该回调')
})

weui组件库的使用

参考课件

微信授权获取用户信息

wxml

<button  bindtap="getInfo" type="primary" class="btn" >微信登录</button>

js

getInfo(e) {
      wx.getUserProfile({
        desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
        success: (res) => {
          console.log(res);
          //把获取的用户昵称和头像地址存在storage
          let { nickName ,avatarUrl} = res.userInfo
        },
        fail(err){
          console.log('拒绝');
        }
      })
    },

微信数据缓存的API

//存
let user = {
    nickName: 'a',
    age: 18
}
wx.setStorage({
    key:"userinfo",
    data: user
})

//取
wx.getStorage({
      key: 'userinfo',
      success:(res)=> {
        this.setData({
          isLoginShow: false
        })
      },
      fail:()=>{
        console.log('没有数据');
        this.setData({
          isLoginShow: true
        })
      }
    })
//清除
wx.removeStorage({
    key: 'userinfo',
  })
上一篇 下一篇

猜你喜欢

热点阅读