Taro Error: MiniProgramError {“errMsg“:“getLocation:fail

2022/9/22

taro版本已经更新了

在这里插入图片描述
报错信息
在这里插入图片描述

Error: MiniProgramError
{"errMsg":"getLocation:fail the api need to be declared in the requiredPrivateInfos field in app.json/ext.json"}
    at Object.errorReport (WAServiceMainContext.js?t=wechat&s=1663850492189&v=2.26.1:1)
    at Function.thirdErrorReport (WAServiceMainContext.js?t=wechat&s=1663850492189&v=2.26.1:1)
    at Object.thirdErrorReport (WAServiceMainContext.js?t=wechat&s=1663850492189&v=2.26.1:1)
    at a (WASubContext.js?t=wechat&s=1663850492189&v=2.26.1:1)
    at Object.cb (WASubContext.js?t=wechat&s=1663850492189&v=2.26.1:1)
    at H._privEmit (WASubContext.js?t=wechat&s=1663850492189&v=2.26.1:1)
    at H.emit (WASubContext.js?t=wechat&s=1663850492189&v=2.26.1:1)
    at WASubContext.js?t=wechat&s=1663850492189&v=2.26.1:1
    at Pe (WASubContext.js?t=wechat&s=1663850492189&v=2.26.1:1)
    at WASubContext.js?t=wechat&s=1663850492189&v=2.26.1:1(env: Windows,mp,1.06.2209190; lib: 2.26.1)

Taro.getLocation() 使用报错

是这么使用的

 Taro.getLocation({
            type: 'wgs84',
            success: function (res) {
                setArdessInfo(res)
                console.log(res)
            },
            fail:function(e){
                console.log(e)
            },
            complete:function(){
                fetch()
            }
        })

app.config.js

 permission: {
    'scope.userLocation': {
      desc: '你的位置信息将用于小程序位置接口的效果展示'
    }
  },

以上是我的使用方式,下面说解决方法。

app.config.js 添加一些配置,

 permission: {
    'scope.userLocation': {
      desc: '你的位置信息将用于小程序位置接口的效果展示'
    }
  },


  "requiredBackgroundModes": ["audio", "location"],
  "requiredPrivateInfos": ["getLocation"],

到这可能就解决了。

在这里插入图片描述

或者这行报错,添加这句可以解决。

 requiredPrivateInfos?: ('getFuzzyLocation' | 'getLocation' | 'onLocationChange' | 'startLocationUpdate' | 'startLocationUpdateBackground' | 'chooseLocation' | 'choosePoi' | 'chooseAddress')[] 

在这里插入图片描述
然后就不报错了,经纬度也获取到了,uniapp如果报错也应该可以按照这个思路试一试 。
在这里插入图片描述
在这里插入图片描述

参考
https://github.com/NervJS/taro/pull/12099/commits/97aa1041ad7b947bf61b264b15c65bae5a36b419

https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html#requiredPrivateInfos

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
zsh 是一种强大的命令行 shell,它是 Bourne shell 的一个扩展版本。它提供了许多有用的功能和改进,使得命令行操作更加高效和便捷。 关于你提到的 "taro: command not found" 错误,这可能是因为你尝试执行了一个名为 "taro" 的命令,但系统没有找到该命令。这可能是因为你没有安装 taro 或者 taro 不在系统的可执行路径中。 要解决这个问题,你可以尝试以下几个步骤: 1. 确保你已经正确安装了 taro。你可以通过运行 `taro -v` 或者 `taro --version` 来检查 taro 是否已经安装,并查看其版本信息。 2. 如果你已经安装了 taro,但仍然出现 "taro: command not found" 错误,那么可能是因为 taro 不在系统的可执行路径中。你可以通过将 taro 的可执行文件所在的路径添加到系统的 PATH 环境变量中来解决这个问题。具体的步骤取决于你使用的操作系统和终端。 - 在 macOS 和 Linux 中,你可以编辑 `~/.zshrc` 文件,并在其中添加类似于 `export PATH="$PATH:/path/to/taro"` 的行,将 `/path/to/taro` 替换为 taro 可执行文件所在的路径。然后保存文件并重新启动终端。 - 在 Windows 中,你可以编辑 `C:\Users\YourUsername\.zshrc` 文件,并在其中添加类似于 `export PATH="$PATH:/path/to/taro"` 的行,将 `/path/to/taro` 替换为 taro 可执行文件所在的路径。然后保存文件并重新启动终端。 3. 如果以上步骤都没有解决问题,那么可能是因为你没有正确安装 taro 或者 taro 的安装存在问题。你可以尝试重新安装 taro,并确保按照官方文档提供的步骤进行操作。 希望以上信息对你有帮助!如果你还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值