wx_getPhone.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. const util = require('../func/request')
  2. //获取登录code
  3. const getWxCode = () => {
  4. wx.login({
  5. success: res => {
  6. wx.setStorageSync('wxCode', res.code)
  7. }
  8. })
  9. }
  10. //检测是否获取手机号
  11. const isGetPhone = (e) => {
  12. if (e.detail.errMsg == 'getPhoneNumber:ok') {
  13. return true
  14. } else {
  15. return false
  16. }
  17. }
  18. //获取手机号
  19. const getPhone = (e) => {
  20. return new Promise((reslove, reject) => {
  21. wx.showLoading({
  22. title: '获取中...',
  23. mask: true
  24. });
  25. if (!isGetPhone(e)) {
  26. wx.hideLoading();
  27. wx.showToast({
  28. title: '我们需要获取您的手机号才能进行实名登录哦',
  29. icon: 'none'
  30. })
  31. reject();
  32. } else {
  33. util.request_wxrlxf({
  34. url: '/api/next/doGetPhone',
  35. data: {
  36. code: wx.getStorageSync('wxCode'),
  37. iv: e.detail.iv,
  38. encryptedData: e.detail.encryptedData
  39. },
  40. method: 'post',
  41. type: 'application/json'
  42. })
  43. .then((suc) => {
  44. wx.hideLoading()
  45. getWxCode();
  46. reslove (suc.data)
  47. })
  48. }
  49. })
  50. }
  51. module.exports = getPhone