微信小程序如何获取用户收货地址

 更新时间:2018年11月27日 17:20:10   作者:a_靖   我要评论

这篇文章主要为大家详细介绍了微信小程序获取用户收货地址的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

获取用户收货地址需要用户点击授权,所以有两种情况,确认授权、取消授权。

情况一,用户第一次访问用户地址授权,并且点击确定授权。

情况二,用户点击取消授权后,再次获取授权

流程: (代码逻辑整理)

1.点击事件触发函数,获取用户当前设置

2.根据用户当前设置中的用户授权结果,判断是否包含收货地址授权

3.如果包含收货地址授权并且没有取消过收货地址授权,直接调用wx.chooseAddress(),获取用户收货地址。

4.取消过收货地址授权,调用wx.openSetting(),调起客户端小程序设置界面让用户去打开授权

4.1:用户当前设置包含收货地址授权但是用户点击取消授权,调用wx.openSetting(),调起客户端小程序设置界面让用户去打开授权

4.2:用户当前设置不包含收货地址授权(说明是第一次打开获取用户收货地址信息的授权),调用wx.chooseAddress(),获取用户收货地址。

完整代码:

<button bindtap='aaaaaaa'>获取地址</button>
 aaaaaaa() {
 wx.getSetting({
  success(res) {
  console.log("vres.authSetting['scope.address']:",res.authSetting['scope.address'])
  if (res.authSetting['scope.address']) {
   console.log("111")
   wx.chooseAddress({
   success(res) {
    console.log(res.userName)
    console.log(res.postalCode)
    console.log(res.provinceName)
    console.log(res.cityName)
    console.log(res.countyName)
    console.log(res.detailInfo)
    console.log(res.nationalCode)
    console.log(res.telNumber)
   }
   })
    // 用户已经同意小程序使用录音功能,后续调用 wx.startRecord 接口不会弹窗询问
  } else {
   if (res.authSetting['scope.address'] == false) {
   console.log("222")
   wx.openSetting({
    success(res) {
    console.log(res.authSetting)
    }
   })
   } else {
   console.log("eee")
   wx.chooseAddress({
    success(res) {
    console.log(res.userName)
    console.log(res.postalCode)
    console.log(res.provinceName)
    console.log(res.cityName)
    console.log(res.countyName)
    console.log(res.detailInfo)
    console.log(res.nationalCode)
    console.log(res.telNumber)
    }
   })
   }
  }
  }
 })
},

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持澳门金沙网上娱乐。

相关文章

  • 浅谈javascript中的call、apply、bind

    浅谈javascript中的call、apply、bind

    这篇文章主要为大家详细介绍了javascript中的call、apply、bind方法,感兴趣的朋友可以参考一下
    2016-03-03
  • 使用BootStrap实现用户登录界面UI

    使用BootStrap实现用户登录界面UI

    本文给大家介绍使用BootStrap实现用户登录界面UI,布局风格采用左右各一半的风格设计,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧
    2016-08-08
  • JQuery中serialize() 序列化

    JQuery中serialize() 序列化

    这篇文章主要介绍了JQuery中serialize() 序列化,十分的细致全面,推荐给大家,
    2015-03-03
  • 深入理解JavaScript系列(3) 全面解析Module模式

    深入理解JavaScript系列(3) 全面解析Module模式

    Module模式是JavaScript编程中一个非常通用的模式,一般情况下,大家都知道基本用法,本文尝试着给大家更多该模式的高级使用方式
    2012-01-01
  • tween.js缓动补间动画算法示例

    tween.js缓动补间动画算法示例

    本篇文章主要介绍了tween.js缓动补间动画示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • 详解JS面向对象编程

    详解JS面向对象编程

    这篇文章主要为大家介绍了js面向对象编程,感兴趣的小伙伴们可以参考一下
    2016-01-01
  • js innerHTML 改变div内容的方法

    js innerHTML 改变div内容的方法

    永远不知道你可以改变的内容,一个HTML元素?也许你要取代的文字段落中,以反映什么访客选定刚刚从下拉框中。通过操纵一个元素的innerHtml您可以变更您的文本和HTML多达你喜欢。
    2013-08-08
  • JS 常用校验函数

    JS 常用校验函数

    比较常用到的一些字符验证函数,里面有正则等好东西,推荐大家保存即可直接调用。
    2009-03-03
  • UserData用法总结 lanyu出品

    UserData用法总结 lanyu出品

    前一段做音乐和链接保存项目时用到了UserData,现在上线后效果不错,就把UserData的一些用法总结出来,大家一同分享。
    2010-07-07
  • 微信小程序版本自动更新的方法

    微信小程序版本自动更新的方法

    这篇文章主要介绍了微信小程序版本自动更新的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06

最新评论