微信小程序如何再次获取用户授权的方法


Posted in Javascript onMay 10, 2019

现在在做一个小程序有地图的功能,通过点击按钮打开地图。调用wx.getlocation()这个接口是需要用户的授权。如果他授权了,返回一个success当然最好啦,就什么问题都没有了。如果他点了取消,返回一个fail,我就使用预设的经纬度打开一个定位。但是如果用户点击返回以后,再次点击按钮进入地图就会没有反应(如果一开始有授权的话就可以再次重新打开地图)。

有什么方法可以解决呢,或者怎样可以重新获取用户授权。毕竟叫他们删了重来的话,这样的体验好像不大好。。。

方法:A:单击隐藏图章wx.openSetting(OBJECT) 重新调用小程序授权,文档现在已经有了【以下是文档内容】

wx.openSetting(OBJECT)

调起客户端小程序设置界面,返回用户设置的操作结果

Object 参数说明:

参数 类型 必填 说明
success Function 接口调用成功的回调函数,返回内容详见返回参数说明。
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数说明:

参数 类型 说明
authSetting Object 用户授权结果,其中 key 为 scope 值,value 为 Bool 值,表示用户是否允许授权,详见 scope 列表

示例代码:

wx.openSetting({
 success: (res) => {
  /*
   * res.authSetting = {
   *  "scope.userInfo": true,
   *  "scope.userLocation": true
   * }
   */
 }
})

wx.getSetting(OBJECT)

获取用户的当前设置

Object 参数说明:

参数 类型 必填 说明
success Function 接口调用成功的回调函数,返回内容详见返回参数说明。
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数说明:

参数 类型 说明
authSetting Object 用户授权结果,其中 key 为 scope 值,value 为 Bool 值,表示用户是否允许授权,详见 scope 列表

示例代码:

wx.getSetting({
 success: (res) => {
  /*
   * res.authSetting = {
   *  "scope.userInfo": true,
   *  "scope.userLocation": true
   * }
   */
 }
})
Map:function(){
    wx.getLocation({
      type: 'gcj02', 
      success: function(res){
        // success
        wx.openLocation({
          latitude: res.latitude,
          longitude: res.longitude, 
          scale: 28,       
        })},
      
      fail: function(res){
        // fail 
        wx.openLocation({
          address:"获取授权失败 打开默认定位",
        //默认定位我就隐藏啦
          latitude: XX.XX,
          longitude: XX.XX,
          scale: 28,      
        },
        wx.openSetting({
          //重新请求获取定位
        success: (res) => {}})
        )},
    })
  }

以上所述是小编给大家介绍的微信小程序如何再次获取用户授权的方法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
使用jquery实现div的tab切换实例代码
May 27 Javascript
js禁止页面使用右键(简单示例代码)
Nov 13 Javascript
JS使用oumousemove和oumouseout动态改变图片显示的方法
Mar 31 Javascript
javascript多行字符串的简单实现方式
May 04 Javascript
javascript实现动态改变层大小的方法
May 14 Javascript
JavaScript中省略元素对数组长度的影响
Oct 26 Javascript
JavaScript无阻塞加载和defer、async详解
Feb 26 Javascript
深入浅析Vue全局组件与局部组件的区别
Jun 15 Javascript
JavaScript类数组对象转换为数组对象的方法实例分析
Jul 24 Javascript
使用vue2.0创建的项目的步骤方法
Sep 25 Javascript
详解vuex数据传输的两种方式及this.$store undefined的解决办法
Aug 26 Javascript
Vue实现简单计算器案例
Feb 25 Javascript
vue 弹窗时 监听手机返回键关闭弹窗功能(页面不跳转)
May 10 #Javascript
vue-cli+axios实现文件上传下载功能(下载接收后台返回文件流)
May 10 #Javascript
vue element中axios下载文件(后端Python)
May 10 #Javascript
微信小程序授权登录解决方案的代码实例(含未通过授权解决方案)
May 10 #Javascript
简单通过settimeout看javascript的运行机制
May 10 #Javascript
详解js实时获取并显示当前时间的方法
May 10 #Javascript
JS获取本地地址及天气的方法实例小结
May 10 #Javascript
You might like
咖啡的化学
2021/03/03 咖啡文化
PHPExcel读取Excel文件的实现代码
2011/12/06 PHP
php结合ajax实现赞、顶、踩功能实例
2014/05/12 PHP
php+ajax实现图片文件上传功能实例
2014/06/17 PHP
Yii2针对游客、用户防范规则和限制的解决方法分析
2016/10/08 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
2020/04/14 PHP
JS 打印界面的CSS居中代码适用所有浏览器
2014/03/19 Javascript
jquery实现搜索框常见效果的方法
2015/01/22 Javascript
js的flv视频播放器插件使用方法
2015/06/23 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
JavaScript实现输入框(密码框)出现提示语
2016/01/12 Javascript
过期软件破解办法实例详解
2017/01/04 Javascript
jQuery读取XML文件的方法示例
2017/02/03 Javascript
jquery实现tab键进行选择后enter键触发click行为
2017/03/29 jQuery
vue后台管理之动态加载路由的方法
2018/08/13 Javascript
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
2018/08/20 Javascript
三种Webpack打包方式(小结)
2018/09/19 Javascript
vue中render函数的使用详解
2018/10/12 Javascript
微信小程序全选多选效果实现代码解析
2020/01/21 Javascript
Jquery $.map使用方法实例详解
2020/09/01 jQuery
手动实现把python项目发布为exe可执行程序过程分享
2014/10/23 Python
Python打印scrapy蜘蛛抓取树结构的方法
2015/04/08 Python
Python操作列表之List.insert()方法的使用
2015/05/20 Python
Python扩展内置类型详解
2018/03/26 Python
python中property属性的介绍及其应用详解
2019/08/29 Python
Python实现一个简单的递归下降分析器
2020/08/01 Python
四方通行旅游网:台湾订房、出国旅游
2017/09/20 全球购物
芬兰设计商店美国:Finnish Design Shop US
2019/03/25 全球购物
戴森英国官网:Dyson英国
2019/05/07 全球购物
开发中都用到了那些设计模式?用在什么场合?
2014/08/21 面试题
秋天的怀念教学反思
2014/04/28 职场文书
专科生就业求职信
2014/06/22 职场文书
经理岗位职责范本
2015/04/15 职场文书
关于运动会的宣传稿
2015/07/23 职场文书
如何利用js在两个html窗口间通信
2021/04/27 Javascript
MySQL的join buffer原理
2021/04/29 MySQL