uni-app使用chooseLocation报错

uni-app使用chooseLocation报错

信息类别 详细信息
产品分类 uniapp/App
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 25H2
HBuilderX类型 正式
HBuilderX版本号 4.85
手机系统 Android
手机系统版本号 Android 13
手机厂商 小米
手机机型 civi
页面类型 vue
vue版本 vue2
打包方式 云端
项目创建方式 HBuilderX

bug描述:

使用chooseLocation报错

示例代码:

var that = this  
uni.chooseLocation({  
    success: (res) => {  
        if (type == 0) {  
            that.formData.startAddress = res.name  
            that.formData.startLocation = res.latitude + "," + res.longitude  
        } else if (type == 1) {  
            that.formData.endAddress = res.name  
            that.formData.endLocation = res.latitude + "," + res.longitude  
        }  
        //that.mapChange()  
    }  
})  

报错

[JS Framework] Failed to execute the callback function:
TypeError: Cannot read property ‘pageIndex’ of null
16:46:06.600 reportJSException >>> exception function:WEEX_CALL_JAVASCRIPT, exception:JavaScript execute error!Uncaught TypeError: Cannot read property ‘pageIndex’ of null
at (/__uniappchooselocation.js.nvue:32:16971)

操作步骤:

var that = this
uni.chooseLocation({
success: (res) => {
if (type == 0) {
that.formData.startAddress = res.name
that.formData.startLocation = res.latitude + "," + res.longitude
} else if (type == 1) {
that.formData.endAddress = res.name
that.formData.endLocation = res.latitude + "," + res.longitude
}
//that.mapChange()
}
})

预期结果:

返回选择地址信息

实际结果:

[JS Framework] Failed to execute the callback function: TypeError: Cannot read property ‘pageIndex’ of null 16:46:06.600 reportJSException >>> exception function:WEEX_CALL_JAVASCRIPT, exception:JavaScript execute error!Uncaught TypeError: Cannot read property ‘pageIndex’ of null at (/__uniappchooselocation.js.nvue:32:16971)


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

1 回复

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


这个错误通常是由于chooseLocation页面初始化失败导致的。从错误信息看,问题出现在pageIndex属性读取时遇到null值,表明底层页面对象未正确创建。

可能的原因和解决方案:

  1. 权限配置缺失manifest.json中确保已添加定位权限:

    "permissions": {
      "UniNView": {
        "requiredPermissions": [
          "android.permission.ACCESS_FINE_LOCATION",
          "android.permission.ACCESS_COARSE_LOCATION"
        ]
      }
    }
    
  2. 高德地图Key配置问题 检查manifest.json中高德地图配置是否正确:

    "app-plus": {
      "modules": {
        "Maps": {}
      },
      "distribute": {
        "sdkConfigs": {
          "maps": {
            "amap": {
              "appkey_android": "你的高德地图Key"
            }
          }
        }
      }
    }
    
  3. 页面栈异常 错误信息中的pageIndex表明页面栈管理异常,尝试在调用前添加延迟:

    setTimeout(() => {
      uni.chooseLocation({
        success: (res) => {
          // 处理结果
        }
      });
    }, 100);
回到顶部