微信小程序入门之授权登录

微信小程序

一.实现微信小程序授权登录
微信小程序每次获得用户的信息时需要授权登录,下面的代码可以实现以下功能

Page({
  data: {
    nickName:''
  },
  dianji(){
   
    console.log("点击了按按钮")
    wx.getUserProfile({
       desc: '获取用户的信息',//获取用户的信息
       success:res => {//用户成功授权
        console.log("成功",res)
        this.setData({
          nickName:res.userInfo.nickName,
          touxian:res.userInfo.avatarUrl
        })
    },
    fail:res=>{
      console.log("失败",res)
    }
  })}
})

结果:
在这里插入图片描述

使得登录后可以隐藏点击按钮:
在js文件里面增加以下代码

Page({
  data: {
   userInfo:""
  },
  dianji(){
   
    console.log("点击了按按钮")
    wx.getUserProfile({
       desc: '获取用户的信息',
       success:res => {
         let user=res.userInfo
        console.log("成功",res)
        this.setData({
          userInfo:user   
        })
    },
    fail:res=>{
      console.log("失败",res)
    }
  })}
})

在wxml里面的代码:

<button wx:if="{{!userInfo}}"   bindtap="dianji" >点击</button>
<view wx:else class="root">
     <image class="touxian"  src="{{userInfo.avatarUrl}}"></image>
     <text>{{userInfo.nickName}}</text>
</view>

理解:
设定条件,由于一开始userInfo为空,所以执行button命令,点击授权之后,userInfo获得了数据所以执行里面的内容。
退出点击按钮的操作:
在之前的代码下面增加一段,同时也要在wxml里面增加相应的操作
js:

 tui(){
   this.setData({
    userInfo:""
   })
 }

wxml:

  <button bindtap="tui" >退出登录</button>

二.对登录的信息进行缓存
用户在使用微信小程序时,可能需要对用户以前提交的信息进行保存,方便用户的操作,所以对用户登录的信息进行缓存十分重要。
主要是使用了微信小程序里面的这一端代码:
wx.setStorageSync(‘参数1’, 参数2)
上面的参数1其实就是相对与一个用来保存参数2里面内容的地方,可以在微信开发者里面看到缓存的内容:
在这里插入图片描述

同时得到保存地方的内容可以用以下代码:
wx.getStorageSync(‘参数1’)

具体实现:

Page({
  data: {
   userInfo:""
  },
  onLoad(){
    let user=wx.getStorageSync('user1')
    console.log("1",user)
    this.setData({
      userInfo:user
    })
  },
  dianji(){
    console.log("点击了按按钮")
    wx.getUserProfile({
       desc: '获取用户的信息',
       success:res => {
         let user=res.userInfo
         wx.setStorageSync('user1', user)
        console.log("成功",res)
        this.setData({
          userInfo:user   
        })
    },
    fail:res=>{
      console.log("失败",res)
    }
  })},
 tui(){
   this.setData({
    userInfo:""
   })
   wx.setStorageSync('user1', null)
 }
})

结果就是每次进入小程序可以保存用户的相关信息,不用总是点击登录输入相关的信息

  • 11
    点赞
  • 135
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值