uni-app uni.chooseLocation 在微信公众号H5中无法选择位置

uni-app uni.chooseLocation 在微信公众号H5中无法选择位置

开发环境 版本号 项目创建方式
Windows 10 HBuilderX
### 操作步骤:
```md
```javascript
wakeMap(){
console.log('地图');
uni.chooseLocation({
latitude: 39.916527,
longitude: 116.397128,
success: function (res) {
console.log(res);
}
});


### 预期结果:
选择位置返回正确的位置信息

### 实际结果:
重新打开使用这个方法的表单页面并刷新页面,且并未执行成功的回调

### bug描述:
ios手机在微信浏览器使用uni.chooseLocation选择位置之后会刷新页面

更多关于uni-app uni.chooseLocation 在微信公众号H5中无法选择位置的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app uni.chooseLocation 在微信公众号H5中无法选择位置的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在微信公众号H5环境中,uni.chooseLocation 无法正常使用是常见问题,主要原因是微信浏览器对地理位置API的限制。

核心原因:

  1. 微信浏览器中,uni.chooseLocation 依赖的底层API(如微信JS-SDK或浏览器原生定位)需要特定授权和配置。
  2. iOS的微信浏览器对地理位置权限管理更严格,可能触发页面刷新或无法回调。

解决方案:

  1. 使用微信JS-SDK(推荐):
    • manifest.json中配置JS-SDK白名单。
    • 通过wx.openLocationwx.chooseLocation实现(需企业认证公众号并配置安全域名)。
    • 示例:
      wx.chooseLocation({
        success: (res) => {
          console.log(res.name, res.address);
        }
      });
回到顶部