微信小程序(1)-用户头像-昵称的获取及其UI设计
2020-03-26 07:51
771 查看
要做出来的样式如下
1-用户-User设计
- user.js(该处代码为小程序的逻辑页面,就是说我们所编写的处理问题的函数就写在这里)
userinfo:我们命名对的自变量,代表用户信息。
onShow:就是要在页面展示并设置( this.setData({userinfo}))我们所获取(const userinfo=wx.getStorageSync(“userinfo”))的用户信息的缓存。
Page({ data: { userinfo:{}}, onShow(){ const userinfo=wx.getStorageSync("userinfo"); this.setData({userinfo}) } })
- user.json(页面设置,比如说页面的标题,标题字体大小颜色等)
因为user.json继承app.json,所以代码为
{}
- user.wxml(小程序的页面组件设置,我们开始所看见的用户信息就是通过这个来设置)
user_bg:我们自己定义的用户的包含头像,昵称,登录的整个页面。通过view class=“”来定义。
user_on:我们自己定义的获取用户信息之后的页面。通过view class=“”来定义。
user_img:我们自己定义的获取用户信息之后的头像页面。通过view class=“”来定义。
user_info:我自己定义的获取用户信息之后的昵称页面。通过view class=“”来定义。
user_un:我们自己定义的未获取用户信息时所存在的登录页面。通过view class=“”来定义。
wx:if:类似编译语言中的条件判断语句。
wx:else:类似编译语言中的条件判断语句。
userinfo.avatarUrl:获取用户的头像所定义的自变量。
userinfo.nickName:获取用户昵称所定义的自变量。
navigator:超链接,用于登录页面的跳转。
<view class="user_bg"> <view wx:if="{{userinfo.avatarUrl}}" class="user_on"> <view class="user_img"> <image src="{{userinfo.avatarUrl}}"></image> </view> <view class="user_info"> <text>{{userinfo.nickName}}</text> </view> </view> <view wx:else class="user_un"> <navigator url="/pages/login/login">登录</navigator> </view> </view>
- user.wxss(当我们设置好用户界面组件后,通过这个来调整用户组件的大小,颜色,距离等)
.user_bg{ height: 150rpx; display: flex; align-items: center; } .user_on{ height: 150rpx; display: flex; align-items: center; } .user_info{ align-items: center; } image{ width: 125rpx; height: 125rpx; border-radius: 50%; margin-left: 45rpx; margin-top: 20rpx; } text{ font-size: 50rpx; padding-left: 30rpx; } .user_un{ position: absolute; left: 45%; border: 1rpx solid green; border-radius: 10rpx; font-size: 50rpx; }
以上我们就设计好了开始图片中的用户头像和昵称界面
2-用户-信息获取
-
login.js
handleGetUserInfo:login.wxml中设置的,指示获取用户信息的功能。
console.log(e):获取用户信息。
const { userInfo } = e.detail:将获取到的用户信息赋值给userinfo。
wx.setStorageSync(“userinfo”, userInfo): 将获取到的信息存到缓存中,以便于user页面可以获取缓存。
wx.navigateBack({
delta: 1
}):当获取完信息后,返回第一个User页面。
Page({ handleGetUserInfo(e) { //console.log(e); const { userInfo } = e.detail; wx.setStorageSync("userinfo", userInfo); wx.navigateBack({ delta: 1 }); } })
- login.json
页面默认继承app.json,但任然要加上{}
{}
- login.wxml
button:按钮组件,plain表示按钮透明,type为按钮的样式类型,我们设置为绿色,open-type表示点击按钮触发什么功能,这里为获取用户信息,bindgetuserinfo表示用户点击该按钮时,会返回获取到的用户信息,回调的detail数据与wx.getUserInfo返回的一致,open-type="getUserInfo"时有效。
<view class="user_bg"> <button plain type="primary" open-type="getUserInfo" bindgetuserinfo="handleGetUserInfo">登录</button> </view>
- login.wxss
.user_bg{ widows: 30rpx; height: 125rpx; display: flex; align-items: center; }
3-用户-最终完成的页面
- 未获取用户信息的页面
- 登录页面
- 获取信息请求页面
- 成功页面
最后-tips
更多的信息大家可以通过微信开放文档去查询,了解,以上页面也存在很多不足,欢迎大家提出问题,以便改正。
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- 微信小程序如何获取用户头像和昵称
- 微信小程序获取用户头像和昵称
- 微信小程序获取用户openid,头像昵称信息,后台java代码
- 微信小程序系列一:获取头像昵称
- 微信小程序获取用户高清头像
- 微信通过网页获取用户头像与昵称等信息
- 微信开发笔记:获取用户openid,以及用户头像昵称等信息
- 微信小程序获取微信头像和昵称
- 微信小程序01获取昵称和头像
- 小程序自动获取用户头像和昵称
- js控制URL地址的改变,以微信服务号的授权获取用户的昵称和头像为例
- 微信网页授权,并获取用户头像,昵称等基本信息代码实例
- 小程序开发中获取用户头像和昵称
- 微信小程序 兼容用户拒绝获取位置权限 用户拒绝权限处理
- 解决 微信小程序获取用户信息时弹框不显示的问题
- 微信小程序—如何获取用户输入文本框的值
- 微信小程序获取用户OpenId——Java
- 小程序获取用户头像大图 小程序获取用户头像模糊的问题 小程序自定义转发头像模糊 小程序自定义转发分享大图
- 小程序getPhoneNumber获取微信绑定手机号码,获取用户微信认证时的手机号——玩转小程序113
- 【微信小程序遇到的坑】获取用户当前位置并将坐标转化为中文