uni-app uni.chooseLocation出错

uni-app uni.chooseLocation出错

项目信息 详情
产品分类 uniapp/App
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 win11
HBuilderX类型 正式
HBuilderX版本号 4.66
手机系统 Android
手机系统版本号 Android 16
手机厂商 小米
手机机型 小米14
页面类型 vue
vue版本 vue3
打包方式 云端
项目创建方式 HBuilderX

示例代码:

uni.chooseLocation({
success: function (res) {
console.log('位置名称:' + res.name);
console.log('详细地址:' + res.address);
console.log('纬度:' + res.latitude);
console.log('经度:' + res.longitude);
},  

操作步骤:

uni.chooseLocation({
success: function (res) {
console.log('位置名称:' + res.name);
console.log('详细地址:' + res.address);
console.log('纬度:' + res.latitude);
console.log('经度:' + res.longitude);
},
出现reportJSException >>>>> exception function:WEEX_CALL_JAVASCRIPT, exception:JavaScript execute error!Uncaught TypeError: Cannot read property 'pageIndex' of null
at  (/__uniappchooselocation.js.nvue:32:16971)

预期结果:

能正常使用

实际结果:

reportJSException >>>>> exception function:WEEX_CALL_JAVASCRIPT, exception:JavaScript execute error!Uncaught TypeError: Cannot read property 'pageIndex' of null
at  (/__uniappchooselocation.js.nvue:32:16971)

bug描述:

uni.chooseLocation({
success: function (res) {
console.log('位置名称:' + res.name);
console.log('详细地址:' + res.address);
console.log('纬度:' + res.latitude);
console.log('经度:' + res.longitude);
}报错,真机上面不能够选择点,
使用uni.getLocation是正常的,高德地图的key也是一致的


更多关于uni-app uni.chooseLocation出错的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

你可以看一下是不是地图厂商那边,接口用量是不是受限了

更多关于uni-app uni.chooseLocation出错的实战教程也可以访问 https://www.itying.com/category-93-b0.html


根据你提供的信息,这个问题可能由几个原因导致:

  1. 权限问题:确保已在manifest.json中正确配置了高德地图的appkey,并且在AndroidManifest.xml中添加了必要的位置权限。

  2. nvue页面兼容性问题:从错误日志看,问题出在__uniappchooselocation.js.nvue文件,说明框架内部处理时出现了问题。可以尝试改用vue页面测试。

  3. 高德地图SDK配置问题:检查高德开放平台的应用配置是否正确,特别是包名和SHA1签名是否与云端打包的一致。

  4. 代码写法问题:建议使用Promise风格的调用方式:

try {
  const res = await uni.chooseLocation();
  console.log('位置信息:', res);
} catch (e) {
  console.error('选择位置失败:', e);
}
回到顶部