<template><view class="tianjiatouxiangnicheng"><view class="tianjiatouxiangnicheng_top"><!-- 2.0.19支持autoBack,默认为false --><uni-nav-bar left-icon="left" title="添加头像昵称" :statusBar="true" :border="false" @clickLeft="backBtn"color="white" backgroundColor="#D72C22" /></view>       <button class="avatar-wrapper" open-type="chooseAvatar" @chooseavatar="onChooseAvatar"><u--image width="116rpx" height="116rpx" :src="data:image"></u--image></button>       <form @submit="formSubmit"><view class="row"><view class="text1">昵称:</view><input type="nickname" v-model="nickname" class="weui-input" name="nickname" placeholder="请输入昵称" /></view><button type="primary" class="denglubtn" form-type="submit">登录</button></form></view>
</template>
<script>export default {async onLoad(options) {//获取手机号的codethis.code = options.code;console.log(this.code);},data() {return {gerenxinxilist: [],image: "https://cdn.uviewui.com/uview/album/6.jpg",avatarUrl: "",nickname: "",openid: "",code: ''};},methods: {backBtn() {uni.navigateBack({delta: 0});},onChooseAvatar(e) {console.log(e);let that = this;console.log(e.detail.avatarUrl);var url=e.detail.avatarUrl?e.detail.avatarUrl:"https://cdn.uviewui.com/uview/album/6.jpg"wx.uploadFile({/* // 拿到临时图片路径后上传到服务器,服务器将返回一个公网地址,届时在任意角落都将能访问到这张图片 */filePath: url, //临时文件路径url: "xxxxx",name: 'file',/* //非常重要!!!!是后台访问二进制数据的关键 该 file 是对应接口,所需要传递的参数 */timeout: 5000,header: {'content-type': 'multipart/form-data',}, // header 值success: res => {that.image = ''let obj = JSON.parse(res.data)if (obj.code == 1) {let imgPath = JSON.parse(res.data).data.fullurl //将二进制转换成字符串类型console.log(imgPath);that.image = imgPath} else {this.image="https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0",uni.showToast({icon: 'none',title: '自定义头像请在手机端选择图片!'});}},fail: e => {this.$toast('上传失败')}})},formSubmit(e) {const URL = "XXXXX"this.nickname = e.detail.value.nicknameconsole.log(this.image);if (this.nickname == '') {uni.showToast({title: '请输入昵称',icon: 'error'})return} else if (this.image == '') {uni.showToast({title: '请选择头像',icon: 'error'})return} else {// #ifdef MP-WEIXINvar that = this;console.log("微信授权登录被点击");wx.login({//成功放回success: (res) => {console.log(res);let code = res.codewx.request({url: URL + `/get_secret`,success(res1) {let secret = res1.data.datauni.setStorageSync('secret', res1.data.data,);wx.request({//登录接口url: URL + `/oauth_user`,data: {avatar: that.image,nickname: that.nickname,jscode: code,code:that.code},success: (res) => {uni.setStorageSync('token', res.data.data.token,);},fail(err) {console.log('err', err);},complete(cp) {console.log(cp);}})},})}})// #endif}},}}
</script>
<style lang="scss">.tianjiatouxiangnicheng {.avatar-wrapper {// text-align: center;width: 116rpx;height: 116rpx;padding-left: 0;padding-right: 0;margin: 0 auto;margin-top: 198rpx;margin-bottom: 90rpx;image {width: 116rpx;height: 116rpx;}}.row {display: flex;justify-content: start;margin: 30rpx;align-items: center;border-bottom: #f5f5f5 4rpx solid;border-top: #f5f5f5 4rpx solid;.weui-input {// background-color: #f5f5f5;height: 112rpx;}}.denglubtn {margin-top: 90rpx;margin-left: 34rpx;width: 684rpx;height: 88rpx;background: #D62D24;border-radius: 120rpx 120rpx 120rpx 120rpx;opacity: 1;text-align: center;font-size: 32rpx;font-family: PingFang SC-Regular, PingFang SC;font-weight: 400;color: #FFFFFF;line-height: 88rpx;}}
</style>

对于新版本的使用可能会存在PC端的不兼容问题,有的PC端掉不起  onChooseAvatar这个方法,所以给用户一个默认头像,对于PC端自定义头像也会有图片大小要求

前端微信小程序新版本实现获取头像和昵称相关推荐

  1. 微信小程序最新快速获取头像和昵称方式

    小程序现在升级了之前的getUserInfo无法拿到用户的头像和昵称,需要单独获取设置 最近项目里面在整改 今天贡献上代码 代码里面头像设置 <!-- #ifdef MP-WEIXIN --&g ...

  2. 微信小程序实现登录获取头像昵称

    微信小程序如何来获取用户头像昵称 大家一定对下面这个图不陌生吧,我们在进入小程序之前,都会遇见类似这样的情况,那么这个是怎么用微信开发者工具实现的呢? 要求 1.首先,我们打开微信开发者工具,新建一个 ...

  3. 微信小程序最新调用用户头像以及昵称

    众所周知:微信小程序开发是面对"公告"编程,小程序的api更新迭代之快,让人叫苦不堪,,, 最近开发小程序项目时,获取用户头像和昵称的方式发生了很大的改变: 它居然绑定到一个 bu ...

  4. 微信小程序授权登录获取用户名和昵称

    微信授权官方文档 登录流程时序: 这里我是用微信开发者工具写的前端 login.wxml代码: <view class="userinfo"><block wx: ...

  5. 微信小程序单纯展示用户 头像、昵称、性别,不通过后台接口获取

    open-data 用于展示微信开放的数据. 使用方法 <open-data type="groupName" open-gid="xxxxxx"> ...

  6. uniapp微信小程序新版本获取用户的头像和昵称,手机号

    新版本微信小程序通过getUserInfo获取到用户的头像是灰色,昵称显示为微信用户,这是微信版本更新了,现在需要用getUserProfile来获取用户的头像和昵称,并且只能页面产生点击事件(例如 ...

  7. 微信小程序通过数据绑定获取用户名和头像

    微信小程序通过数据绑定获取用户名和密码 1.获取用户名和头像 <view>数据绑定</view> <view>数据:{{message}}</view> ...

  8. 微信小程序中如何获取用户手机号授权登录

    随着微信小程序的普及,许多应用程序需要用户登录才能提供更好的服务.而获取用户手机号码是验证用户身份和确保账户安全的重要步骤之一.因此,在本文中,我们将介绍如何在微信小程序中实现手机号授权登录. 步骤一 ...

  9. web前端-微信小程序开发学习

    web前端-微信小程序开发学习 1. 小程序的概述 2. 小程序的项目结构 2.1 小程序项目结构分析 2.2 WXML模版 2.3 小程序的宿主环境 3. 组件 3.1 视图容器类组件 3.2 常用 ...

最新文章

  1. poj2446(匈牙利算法)
  2. dubbo在idea下的使用创建 服务者,消费者 注册中心
  3. zTree菜单的排序
  4. BugkuCTF-Misc:Linux2
  5. c语言 ipc 参数 序列化,浅谈IPC通信之序列化与反序列化(三)
  6. 已知a类被打包在packagea_2021考研干货:199管理类联考综合逻辑归纳习题(1)
  7. 最大的路径的节点值之和
  8. innodb实例损坏情况下恢复数据及相关工具的开发
  9. 如何在mysql命令窗口获取到程序正在执行的sql语句
  10. 「Mac新手必备」自定义 Mac 上的控制中心和菜单栏
  11. 正点原子以太网转串口模块 调试和使用方法(实战详解)
  12. 菜鸟教程 Python100例答案
  13. w7计算机 里工具栏没有了,win7电脑任务栏不见了怎么办
  14. AWS新用户入门学习必备知识
  15. linux系统怎么设任务计划,在Linux系统上设置计划任务
  16. 拥有古风意境美的书签铜流苏
  17. python爬虫模拟点击和输入_爬虫笔记关于鼠标点击和内容输入
  18. 树莓派仿真器R语言下载
  19. 客户端服务端交互实现
  20. 基于MPLAB X IDE配置位设置讲解

热门文章

  1. 机器学习之PCA降维
  2. 人脸识别——PCA降维
  3. java 单例方法,java单例模式使用及注意事项
  4. idea配置git(附错误解决方法)
  5. Linux c/c++文件移动
  6. scrapy项目2:爬取智联招聘的金融类高端岗位(spider类)
  7. GDUFS 2017信息学院程序设计新手赛(正式赛)题解
  8. 自动数据增强AutoAugment
  9. 石头扫地机器人遇见地毯_使用石头扫地机器人小半年后,我们决定认真地推荐它...
  10. Android启动活动用什么方法,Android中启动Activity活动的另一种写法|SquirrelNote