3***@qq.com
3***@qq.com
  • 发布:2025-12-09 11:16
  • 更新:2025-12-09 11:33
  • 阅读:40

uni.chooseLocation选择地图没有显示地址列表,但是也可以定位的,同时,还报了错

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 7.0.0.168

HBuilderX类型: Alpha

HBuilderX版本号: 4.85

手机系统: Android

手机系统版本号: Android 12

手机厂商: 荣耀

手机机型: 荣耀v40轻奢版

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

就点击,然后调用uni.chooseLocation就报错了

预期结果:

应该点击之后,能够获取到选择的地图位置

实际结果:

点击之后,无法拿到周边的位置

bug描述:

uni.chooseLocation选择地图没有显示地址列表,但是也可以定位的,同时,还报了错,是nvue和vue混用的项目,但是只有一个nvue文件,同时nvue页面编译模式是uni-app,hbuilderx的版本是4.85,高德的key和用户名也没问题,同时调用的用量也很多
uni.chooseLocation({
success: function(res) {
console.log('res', res)

                },  
                fail: function(err) {  
                    console.log(err)  
                }  
            });报的错是10:45:40.258 [JS Framework] Failed to execute the callback function:  

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

2025-12-09 11:16 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

该bug反馈内容基本完整但关键细节缺失。BUG描述说明了现象(地图无地址列表但可定位)及错误信息('pageIndex' of null),但未提供manifest中地图配置详情、具体调用场景及高德key权限配置情况。代码示例过于简略,缺少manifest配置和完整上下文,无法直接复现。复现步骤仅"点击调用",缺乏操作细节。预期结果合理,实际结果异常,非误报。

经核查知识库,该问题成立且与已知限制相关:

  1. 知识库明确指出App平台需配置地图厂商key并确保周边服务权限,用户虽称key正常,但未验证是否开启周边搜索API权限
  2. nvue页面仅支持高德地图,且需特别注意manifest配置
  3. 错误"pageIndex of null"表明返回数据结构异常,通常因权限不足或配置错误导致数据为空

用户使用HBuilderX 4.85(高于要求的4.24版),排除版本兼容问题。核心问题在于:

  • 未确认高德控制台是否开通"周边搜索"权限
  • manifest.json中可能未正确配置高德key或安全域名
  • nvue页面调用时可能存在特殊限制

建议用户:

  1. 检查高德开放平台控制台确认已开通"周边搜索"API权限
  2. 核对manifest.json中App SDK配置是否填写正确高德key
  3. 参考地图组件文档确认nvue页面使用规范
  4. 尝试在纯vue页面测试以排除nvue兼容性问题
内容为 AI 生成,仅供参考
3***@qq.com

3***@qq.com (作者)

检查高德开放平台控制台确认已开通"周边搜索"API权限:这个高德的安卓没有周边搜索API,只有web的才有
核对manifest.json中App SDK配置是否填写正确高德key:这个我已经截图放在附件了,是正确的
参考地图组件文档确认nvue页面使用规范:该页面并不是nvue页面,nvue页面并没有使用这个api,两者命名也不同

  • 蔡cai

    附件没看到,是不是没有选择插入

    2025-12-09 11:27

  • 3***@qq.com (作者)

    回复 蔡cai:应该是?我直接复制出来吧 "maps" : {

    "amap" : {

    "name" : "amapK",

    "appkey_ios" : "00ac7688c39b10",

    "appkey_android" : "7d1faa59e8f68f"

    }

    }信息我截了一半,这个我核对过高德后台的信息,是没错的

    2025-12-09 11:34

3***@qq.com

3***@qq.com (作者)

去掉了nvue文件之后,还是报这个 [JS Framework] Failed to execute the callback function:
TypeError: Cannot read property 'pageIndex' of null
11:31:11.336 reportJSException >>>> exception function:WEEX_CALL_JAVASCRIPT, exception:JavaScript execute error!Uncaught TypeError: Cannot read property 'pageIndex' of null
at (/__uniappchooselocation.js.nvue:32:16971)
11:31:11.642 [JS Framework] Failed to execute the callback function:
TypeError: Cannot read property 'pageIndex' of null

  • 蔡cai

    有用到pageIndex这个字段嘛

    2025-12-09 11:45

  • 3***@qq.com (作者)

    回复 蔡cai: 没有呢,这个应该是uni.chooseLocation这个api里封装的

    2025-12-09 11:46

  • 蔡cai

    回复 3***@qq.com: 好的

    2025-12-09 11:52

  • 3***@qq.com (作者)

    回复 蔡cai: 嗯嗯

    2025-12-09 11:56

3***@qq.com

3***@qq.com (作者)

"maps" : {
"amap" : {
"name" : "amapK",
"appkey_ios" : "00ac7688c39b10",
"appkey_android" : "7d1faa59e8f68f"
}
}信息我截了一半,这个我核对过高德后台的信息,是没错的

要回复问题请先登录注册