微信小程序 获取手机号 创建云函数

 

官方文档:

获取手机号 | 微信开放文档 (qq.com) 

 

第一次是使用Https接口调用

后台接口已经调用成功了

但发现前台这里一直都没进回调。。。

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
getPhoneNumber (e) {
    console.log(e.detail.code)
  }

getPhoneNumber 这个方法没有根本就没有进回调!!!

 bindgetphonenumber 这个事件有问题吗。。

百度了很久,也有人遇到了这种情况 但好像苹果没问题,楼主安卓。 为了避免更多人类遭遇此劫。

 

后面是使用云函数调用

注意:云函数的话只能企业小程序能用。

代码看的:(39条消息) 小程序利用云函数获取手机号码_flysnownet的博客-CSDN博客_云函数获取手机号

还是贴一下代码。

 

0、这个的话,因为我一开始是【云开发】,新建云函数,再开始新建文件夹的,不确定到底要不要手动新建云函数,自行尝试吧

微信小程序 获取手机号 创建云函数

 

1、创建云函数      官网: 我的第一个云函数 | 微信开放文档 (qq.com)

在项目根目录找到 project.config.json 文件,新增 cloudfunctionRoot 字段,指定本地已存在的目录作为云开发的本地根目录

 "cloudfunctionRoot": "cloudfunctions/",   新建一个cloudfunctions文件夹,在文件夹下面新建一个文件夹,js 微信小程序 获取手机号 创建云函数

 

 

2、在app.js,onLaunch({})事件中加入
    wx.cloud.init({       traceUser: true,     });   3、在页面新增按钮,在js增加方法 wxml
    <input placeholder="请输入手机号" name="txtCellPhone" type='number' confirm-type="next"  value="{{[userPhone]}}">
    </input>
     <button openType="getPhoneNumber" bindgetphonenumber="getPhoneNumber">
        一键获取 
     </button>

 

js
  //一键获取手机号
  getPhoneNumber(e) {
    console.log("按钮2")
    var that = this;
    wx.cloud.callFunction({
      name: 'getPhone',
      data: {
        weRunData: wx.cloud.CloudID(e.detail.cloudID),
      }
    }).then(res => {
      let data=res.result.weRunData.data;
      that.setData({userPhone:data.phoneNumber})
    }).catch(err => {
      console.error("一键获取手机号异常"+err);
    });
  }

 

 

遇到的错误,解决方法汇总:

1、报错:请先调用 wx.cloud.init() 完成初始化后再调用其他云 API

(39条消息) 报错:请先调用 wx.cloud.init() 完成初始化后再调用其他云 API_Soram的博客-CSDN博客_wx.cloud.init()

 

感谢博主们

上一篇:SpringCloudGateway2.2.9跨域问题解决


下一篇:如何去了解Spring