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
更多关于uni-app使用chooseLocation报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
这个错误通常是由于chooseLocation页面初始化失败导致的。从错误信息看,问题出现在pageIndex属性读取时遇到null值,表明底层页面对象未正确创建。
可能的原因和解决方案:
-
权限配置缺失 在
manifest.json中确保已添加定位权限:"permissions": { "UniNView": { "requiredPermissions": [ "android.permission.ACCESS_FINE_LOCATION", "android.permission.ACCESS_COARSE_LOCATION" ] } } -
高德地图Key配置问题 检查
manifest.json中高德地图配置是否正确:"app-plus": { "modules": { "Maps": {} }, "distribute": { "sdkConfigs": { "maps": { "amap": { "appkey_android": "你的高德地图Key" } } } } } -
页面栈异常 错误信息中的
pageIndex表明页面栈管理异常,尝试在调用前添加延迟:setTimeout(() => { uni.chooseLocation({ success: (res) => { // 处理结果 } }); }, 100);

