起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1785|回复: 9

[用户待确认] 关于地理位置组件

[复制链接]

44

主题

88

帖子

190

积分

初级会员

Rank: 2

积分
190
QQ
发表于 2019-11-12 10:50:25 | 显示全部楼层 |阅读模式
在使用地理位置组件的打开地图选择位置事件时,用的是行列组件的点击事件绑定的。在开发者工具里运行是,弹出授权提示框,点拒绝后,再去点击行列,也不会再弹出授权提示框,退出在进小程序还是一样,这个该怎么处理啊?

10

主题

2831

帖子

3783

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3783
QQ
发表于 2019-11-12 11:43:20 | 显示全部楼层
可参考http://bbs.wex5.com/forum.php?mod=viewthread&tid=214029或网上查下处理办法。
需要发应用及正式服务器请在服务群里联系QQ:516367879。
回复 支持 反对

使用道具 举报

44

主题

88

帖子

190

积分

初级会员

Rank: 2

积分
190
QQ
 楼主| 发表于 2019-11-12 12:16:40 | 显示全部楼层
gaofan 发表于 2019-11-12 11:43
可参考http://bbs.wex5.com/forum.php?mod=viewthread&tid=214029或网上查下处理办法。

有不需要画代码解决的办法吗?看不懂啊?
回复 支持 反对

使用道具 举报

44

主题

88

帖子

190

积分

初级会员

Rank: 2

积分
190
QQ
 楼主| 发表于 2019-11-13 10:00:40 | 显示全部楼层
ninja 发表于 2019-11-12 12:16
有不需要画代码解决的办法吗?看不懂啊?

请问能教教我如何处理再次开启位置授权窗口的问题的吗?看的一头雾水
回复 支持 反对

使用道具 举报

44

主题

88

帖子

190

积分

初级会员

Rank: 2

积分
190
QQ
 楼主| 发表于 2019-11-13 10:21:23 | 显示全部楼层
请问下面这段代码应该插到哪里啊?相应页的js里没找到openmap,都是在引用
openMap:function(e){
    var that = this
    wx.getSetting({
        success(res){
        //这里判断是否有地位权限
          if (!res.authSetting['scope.userLocation']) {
            wx.showModal({
              title: '提示',
              content: '请求获取位置权限',
              success:function(res){
               if(res.confirm==false){
                  return false;
                }
                wx.openSetting({
                  success(res) {
                    //如果再次拒绝则返回页面并提示
                    if (!res.authSetting['scope.userLocation']) {
                      wx.showToast({
                        title: '此功能需获取位置信息,请重新设置',
                        duration: 3000,
                        icon: 'none'
                      })
                    } else {
                      //允许授权,调用地图
                      that.chooseMap()
                    }
                  }
                })
              }
            })
          } else {
          //如果有定位权限,调用地图
            that.chooseMap()
          }

        }
      
    })
  },
  
    chooseMap(){
    var that = this
    wx.chooseLocation({
      success: function (res) {
        that.setData({
          address: res.address,
          latitude: res.latitude,
          longitude: res.longitude
        })
      },
      fail: function (res) {
        console.log(res)
      }
    })
  },
回复 支持 反对

使用道具 举报

44

主题

88

帖子

190

积分

初级会员

Rank: 2

积分
190
QQ
 楼主| 发表于 2019-11-13 13:43:20 | 显示全部楼层
帮忙看下这个问题吧~
回复 支持 反对

使用道具 举报

10

主题

2831

帖子

3783

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3783
QQ
发表于 2019-11-15 16:44:42 | 显示全部楼层
ninja 发表于 2019-11-13 13:43
帮忙看下这个问题吧~

可以在需要打开二次授权的事件里代码中执行wx.openSetting({
                  success(res) {
                    //如果再次拒绝则返回页面并提示
                    if (!res.authSetting['scope.userLocation']) {
                      wx.showToast({
                        title: '此功能需获取位置信息,请重新设置',
                        duration: 3000,
                        icon: 'none'
                      })
                    }
                  }
                }),在微信工具中会打开设置页面。
需要发应用及正式服务器请在服务群里联系QQ:516367879。
回复 支持 反对

使用道具 举报

44

主题

88

帖子

190

积分

初级会员

Rank: 2

积分
190
QQ
 楼主| 发表于 2019-11-15 18:08:33 | 显示全部楼层
gaofan 发表于 2019-11-15 16:44
可以在需要打开二次授权的事件里代码中执行wx.openSetting({
                  success(res) {
         ...

我插在这里了,但是点击位置图标没反应,该怎么弄啊?
QQ图片20191115180715.png
回复 支持 反对

使用道具 举报

44

主题

88

帖子

190

积分

初级会员

Rank: 2

积分
190
QQ
 楼主| 发表于 2019-11-15 18:09:15 | 显示全部楼层
ninja 发表于 2019-11-15 18:08
我插在这里了,但是点击位置图标没反应,该怎么弄啊?

就是插在最后一行了
回复 支持 反对

使用道具 举报

10

主题

2831

帖子

3783

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3783
QQ
发表于 2019-11-15 18:17:02 | 显示全部楼层
ninja 发表于 2019-11-15 18:09
就是插在最后一行了

我们提供的是参考建议,你在按钮点击事件中执行上边的代码就能看到设置页面,至于说什么时机去打开这个根据自己业务判断。
需要发应用及正式服务器请在服务群里联系QQ:516367879。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-4-27 00:25 , Processed in 0.073309 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表