微信小程序开发笔记 进阶篇④——getPhoneNumber 获取用户手机号码(小程序云)

Posted 小康师兄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序开发笔记 进阶篇④——getPhoneNumber 获取用户手机号码(小程序云)相关的知识,希望对你有一定的参考价值。

文章目录

一、前言

微信小程序开发笔记——导读

  • 大部分微信小程序开发者都会有这样的需求:获取小程序用户的手机号码
  • 但是,因为小程序用户的手机号码属于重要信息,为了安全,所以需要如下一系列较为复杂的方法和步骤。
  • 我前期主要通过小程序云的方法获取用户手机号码,后面因为微信政策变更,小程序云不再提供免费版本,最低每月也要收费19元
  • 所以,我才转用方法二和方法三。否则方法一小程序云的方法是最简单的。

微信小程序开发笔记 进阶篇④——getPhoneNumber 获取用户手机号码(小程序云)
微信小程序开发笔记 进阶篇⑤——getPhoneNumber 获取用户手机号码(基础库 2.21.2 之前)
微信小程序开发笔记 进阶篇⑥——getPhoneNumber 获取用户手机号码(基础库 2.21.2 之后)

二、前端代码wxml

  • 必须要有这个button,并且用户点击了,才能有下一步
<button type="default" open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber" class="weui-vcode-btn" wx:else>获取手机号</button>

三、前端代码js

  • app.js
  • 云函数初始化
onLaunch: function (opts) 
  const accountInfo = wx.getAccountInfoSync();
  this.globalData.appId = accountInfo.miniProgram.appId
  console.log('App Launch', opts, accountInfo)
  
  if (!wx.cloud) 
    console.error('请使用 2.2.3 或以上的基础库以使用云能力')
   else 
    wx.cloud.init(
      env: config.envId,
      traceUser: true,
    )
  
,
  • bindgetphonenumber="getPhoneNumber"按钮的回调函数
  • 调用云函数
getPhoneNumber(e) 
	wx.cloud.callFunction(
	    name: 'getPhoneNumber',
	    data: 
	        cloudID: e.detail.cloudID
	    ,
	    success: function (res) 
	        console.log("getPhoneNumber", res.result)
	        _this.setData(
	            mobile: res.result.list[0].data.phoneNumber
	        )
	    ,
	    fail: console.error
	)
,

四、云函数

  • index.js
// 云函数入口文件
const cloud = require('wx-server-sdk')

cloud.init()

// 云函数入口函数
exports.main = async (event, context) => 
  console.log("cloudID: ",event.cloudID)
  return await cloud.getOpenData(
    list:[event.cloudID],
  )

  • package.json

  "name": "wxContext",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": 
    "test": "echo \\"Error: no test specified\\" && exit 1"
  ,
  "author": "",
  "license": "ISC",
  "dependencies": 
    "wx-server-sdk": "latest"
  

五、程序流程

注册界面 云函数 onShow函数, wx.cloud.init 云函数初始化 按钮点击,getPhoneNumber获取cloudID 调用云函数,传入cloudID cloud.getOpenData,返回phoneNumber 注册界面 云函数

觉得好,就一键三连呗(点赞+收藏+关注)

以上是关于微信小程序开发笔记 进阶篇④——getPhoneNumber 获取用户手机号码(小程序云)的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序开发02-小程序基本介绍

微信小程序开发入门篇

微信小程序开发:学习笔记[3]——WXSS样式

微信小程序开发(笔记)

微信小程序开发:学习笔记[1]——Hello World

微信小程序开发笔记01