官方文档:
第一次是使用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
字段,指定本地已存在的目录作为云开发的本地根目录
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()
感谢博主们