vue 百度地图api BMap is not defind BMaplib is not defind 以及修改信息窗口样式 几个解决方案
一开始上手百度地图api 还暗自窃喜 有官方npm 我这种菜鸡应该能方便一点了 但是后来发现这个上次更新是一年前 (╬▔皿▔)凸
遇到的第一个坑是无法更换个性化样式
更换个性样式是v3版本的东西 但是吧 这个npm 没有更新 所以我一开始是在node_modules里面把map文件给改了 2改成3就可以运行了 但是吧 我不能每次cnpm i --save都改一次吧 不得已换成了异步方式加载
然后再写一个配置相关的基本上你的地图就可以正常运行了 当然如果你公司有什么特殊点的要求 要你拿地图干点什么 我也遇到了坑
就是百度地图api 修改信息窗口样式
这是官方提供的 我不信你家公司会满足这样的样式 如果你想修改的话 我暂时有两个方案
第一个深度选择器
百度地图的信息窗口是由8个小div来构成的 那么 我们display:none 掉我们不需要的 然后自己改改
但是把我试了一下 还是不是很方便 好像有些样式也会不生效 反正如果你公司只是想简单改改 推荐这个
然后第二种 就是InfoBox.js
虽然我不知道他藏得这么深干嘛 但是能提供就行 直接同样异步的方式 导入这个js 我一开始想要在index.html直接script引入 还有import引入 但是总是提示BMaplib is not defind 浪费了两小时以后 尝试异步加载的方式 当地图的script加载完以后 调用infobox.js
串起来烧烤他 亚视啦类 然后基本上就可以正常使用了
很多前辈喜欢直接把整体样式写在里面 我是public里面写了一个html 然后这边axios他 怎么说呢 感觉轻松点 我不太喜欢一个页面有太多代码 我怕我时间一长 我都忘记自己写了啥玩意了
再再再然后 这个inforbox.js写出来的信息窗口 他是木有官方窗口的一个 点击下一个窗口上一个窗口消失的功能 也就是说 你疯狂点击标注点的时候 标注点会全部显示 甚至于 一个标注点疯狂点 他会无限叠加上去 所以需要加入一个小功能
判断上一个窗体是否存在 这个是参考的这位前辈的
以上的这些小坑都是我花时间找到各位前辈写出来的帖子 然后一个个尝试总结的 但是看的帖子太多 可能无法标注出全部来源 如果前辈们看到 希望不要生气 如果有什么想法 可以私聊我 我再次编辑也是可以的
写的有点乱 如果有什么问题可以直接问
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!