微信小程序获取用户信息之后,页面间的传值
我们进入一个小程序,首先会请求获取用户昵称及头像,从“首页”获取的资料要传值到“我的”这个页面里面
我开始做的时候,在“我的”这个页面获取到的用户信息可以传值给“首页”,但是“首页”获取到的资料无法传给“我的”,
费劲一番周折(原谅我太笨),解决了,代码如下:
index页面即首页:
wxml代码:
<view><view wx:if="{{!hasUserInfo && canIUse}}" class="modal-mask" catchtouchmove="preventTouchMove"></view><button wx:if="{{!hasUserInfo && canIUse}}" class="modal-dialog" open-type="getUserInfo" bindgetuserinfo="getUserInfo"> 一键登录 </button><block><image src="{{userInfo.avatarUrl}}" mode="cover" bindtap='headImage'></image><text>{{userInfo.nickName}}</text></block>
</view>
js代码:
//获取应用实例
const app = getApp()Page({data: {userInfo: {},hasUserInfo: false,canIUse: wx.canIUse('button.open-type.getUserInfo')},onShow: function () {if (app.globalData.userInfo) {this.setData({userInfo: app.globalData.userInfo,hasUserInfo: true})} else if (this.data.canIUse) {// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回// 所以此处加入 callback 以防止这种情况app.userInfoReadyCallback = res => {this.setData({userInfo: res.userInfo,hasUserInfo: true})}} else {// 在没有 open-type=getUserInfo 版本的兼容处理wx.getUserInfo({success: res => {app.globalData.userInfo = res.userInfothis.setData({userInfo: res.userInfo,hasUserInfo: true})}})}},getUserInfo: function (e) {wx.setStorageSync('userInfo', e.detail.userInfo);app.globalData.userInfo = e.detail.userInfoconsole.log(app.globalData.userInfo)this.setData({userInfo: e.detail.userInfo,hasUserInfo: true})},bindViewTap: function () {this.setData({hasUserInfo: false})},
})
mine页面即我的:
wxml代码:
<view><view wx:if="{{!hasUserInfo && canIUse}}" class="modal-mask" catchtouchmove="preventTouchMove"></view><button wx:if="{{!hasUserInfo && canIUse}}" class="modal-dialog" open-type="getUserInfo" bindgetuserinfo="getUserInfo"> 一键登录 </button><block><image src="{{userInfo.avatarUrl}}" mode="cover" bindtap='headImage'></image><text>{{userInfo.nickName}}</text></block>
</view>
js代码:
const app = getApp()Page({data: {userInfo: {},hasUserInfo: false,canIUse: wx.canIUse('button.open-type.getUserInfo')},onShow: function () {if (app.globalData.userInfo) {this.setData({userInfo: app.globalData.userInfo,hasUserInfo: true})} else if (this.data.canIUse) {// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回// 所以此处加入 callback 以防止这种情况app.userInfoReadyCallback = res => {this.setData({userInfo: res.userInfo,hasUserInfo: true})}} else {// 在没有 open-type=getUserInfo 版本的兼容处理wx.getUserInfo({success: res => {app.globalData.userInfo = res.userInfothis.setData({userInfo: res.userInfo,hasUserInfo: true})}})}},getUserInfo: function (e) {wx.setStorageSync('userInfo', e.detail.userInfo);app.globalData.userInfo = e.detail.userInfoconsole.log(app.globalData.userInfo)this.setData({userInfo: e.detail.userInfo,hasUserInfo: true})},bindViewTap: function () {this.setData({hasUserInfo: false})},
})
微信小程序获取用户信息之后,页面间的传值相关推荐
- 微信小程序获取用户信息流程(2022年版)
开门见山地说,本文主要讲述微信小程序在2022年以后获取用户信息的主要方法,如果想要了解2022年之前微信小程序获取用户信息的相关知识或者是微信小程序之前这部分的设计思想的话,推荐博主的下面这篇博客 ...
- 微信小程序获取用户信息(纯前端)
特别说明 2022年10月25日起,小程序 wx.getUserProfile 接口将被收回. 微信官方不希望开发者直接拿用户的昵称和头像,若小程序需要设置昵称和头像,可以单独开发一个设置页,由用户手 ...
- 微信小程序 获取用户信息并保存登录状态
微信小程序 获取用户信息并保存登录状态:http://www.360doc.com/content/18/0124/11/9200790_724662071.shtml 转载于:https://www ...
- 微信小程序获取用户信息
微信小程序获取用户信息 微信小程序获取用户信息接口做了调整: 2021年4月28日24时后发布的小程序新版本,无法通过wx.getUserInfo与获取用户个人信息(头像.昵称.性别与地区),将直接获 ...
- 微信小程序获取用户信息-头像、昵称......
微信小程序获取用户信息-头像.昵称等,并出现弹窗提示授权 目录 微信小程序获取用户信息-头像.昵称等,并出现弹窗提示授权 1.wx.getUserProfile文档 2.代码演示 3.演示过程(图示) ...
- 微信公众号/微信小程序获取用户信息以及推送微信模版消息_MQ
微信公众号/微信小程序获取用户信息以及推送微信模版消息_MQ 一.获取用户信息 1.首先我们需要了解什么是微信用户的OpenID 在关注者与公众号产生消息交互后,公众号可获得关注者的OpenID(加密 ...
- PHP 微信小程序获取用户信息
小程序授权应用场景:先拿到用户信息(先wx.login获取code,code换取用户session_key,再wx.getuserInfo获取到用户的encryptedData iv ,再通过调用官方 ...
- 微信小程序获取用户信息(含服务端)
本文获取用户信息方式需要服务端配合,纯前端的可查看 微信小程序获取用户信息(纯前端) 若需获取 openid 和用户信息,可使用 wx.getUserInfo() 获取加密后的信息,传给服务端后解密. ...
- 微信小程序获取用户信息,得到是匿名信息,微信用户,问题解决
文章目录 微信小程序获取用户信息,得到是匿名信息,微信用户,问题解决 1.官方声明 2.究其原因 3.登陆流程变更 4.实际情况 5.PC 端兼容注意点 微信小程序获取用户信息,得到是匿名信息,微信用 ...
- 微信小程序获取用户信息更新解决方案
微信小程序获取用户头像和昵称更新了,以下代码是兼容旧版本微信和新版本微信的解决方案,仅供参考 直接上代码 <template><!-- 顶部用户信息显示 --><view ...
最新文章
- 2019 ACM - ICPC 西安邀请赛 B. Product (杜教筛) 简单数论(bushi)
- 1642: [Usaco2007 Nov]Milking Time 挤奶时间(dp)
- 《移动优先与响应式Web设计》一上册 移动优先
- linux中怎么添加附属组,Linux中如何使用附属属组创建文件
- 【报错笔记】在eclipse中复制代码后代码中会报画红线错,而且项目也会报错。
- 计算机组成原理基于mips结构pdf,计算机组成原理_L12-MIPS系统结构-V1.pdf
- 计算机专业实训计划,计算机专业实习计划范文
- 登陆后保持环境变量导出
- Win10 C盘空间越来越小怎么办
- stack heap java_java中的Heap 和 Stack | 学步园
- golang中包互相引用的解决方法
- 使用JSON作为函数的参数(转载)
- 速进,双十一内购通道!
- PCB分析神器,一键找出Bug
- AIDA64内存与缓存测试过了算稳定吗_无需XMP默认3200MHz,十铨 开创者 内存开箱简测...
- 内网穿透工具开发者运维人员必备
- JAVA计算机毕业设计博雅楼自习室预约系统Mybatis+系统+数据库+调试部署
- Cisco ASA 基础
- 深入理解JS的delete
- Android8.1 MTK平台 WLAN热点定制