React调用ECharts的百度地图API,报错BMap api is not loaded

因为项目需要做了个散点、热力图的组件,刚开始写demo的时候还能打开,后来调试刷着刷着就打不开了,报错BMap api is not loaded,如下图:

百度排查问题步骤:

1.因为打开页面有报错说api授权不足,所以去了百度地图的开放平台创建了一个浏览器端的应用,

登录百度帐号

2. 然后根据echarts的demo.html把它需要的js全部下载下来导入项目目录中,然后通过require进行引用,创建第一步的用处就是在api.js里面把密钥改一下

<script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=您的密钥"></script>

然后发现问题并没有解决

3.接着我就又百度,查到有人说要在外部引用BMap,给 webpack 添加配置:externals

在我添加后并没有什么卵用。

4.接着我无意间看到需要把api.js在模板的head里面先引用,我试了下,居然可以了。

为了排查具体哪里引起的,我又把webpack里面的externals删除了,结果一样能用,所以断定跟配置项没什么关系。只跟js的加载顺序以及位置有关系。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

罗曼蒂克笑往事

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值