首先,使用离线百度地图首先需要准备好瓦片图,由于资源内容较大不适合直接放在项目中,因此使用nginx代理

server {listen       80;server_name  127.0.0.1;location / {root E:/BMap/baidumaps;               //配置本地百度地图离线资源路径}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}

在public目录下新建BMap文件夹存放所需要的静态资源。
具体需要的文件有:

  1. 离线地图包 (main.js)
  2. modules文件(百度地图提供的各种图层类,标记类,控件类等等都可以看作是modules,使用这些功能需要加载对应的模块js文件)
  3. css样式
  4. 基础图片(包括marker在内的各种图标)
  5. 各个控件对应的js文件(比如绘图工具等)
  6. 创建mapApi.js文件,配置离线地图的路径指向:
var bmapConfig = {//填写本地的nginx代理地址,指向离线瓦片图资源'tiles_path': 'http://192.168.0.22/maptile', 'home': ''};(function() {//动态获取离线地图包的路径的函数function getHomePath() {var scripts = document.getElementsByTagName('script')var JS__FILE__ = scripts[scripts.length - 1].getAttribute('src')console.log(JS__FILE__)//具体地址视情况需要略作修改return JS__FILE__.substr(0, JS__FILE__.lastIndexOf('/')+1)}//在html页面写入js路径的函数function getScript(src) {document.write('<' + 'script src="' + src + '"' +' type="text/javascript"><' + '/script>')}//配置bmapConfig的home属性,必须bmapConfig.home = getHomePath()     window.BMap_loadScriptTime = (new Date()).getTime()//写入js地址getScript(bmapConfig.home + 'main.js')})()

在public路径下的index.html文件中引入mapApi.js文件
注意要写在< head >标签内,不能写在body标签后,否则加载会出现问题

<script type="text/javascript" src="./BMap/mapapi.js"></script>

在vue文件中创建地图对应的div,并初始化

<template><div id="map" class="baiduMap" />
</template>
<script>
export default {data() {return {map:null,}},mounted() {this.initMap()},methods: {initMap() {this.map = new BMap.Map('map')           //写入地图div的id名称var point = new BMap.Point(116.40323, 39.91522)  // 创建点坐标var marker = new BMap.Marker(point)                    // 创建覆盖物点this.map.addOverlay(marker)                            // 添加覆盖物点this.map.centerAndZoom(point, 13)      // 初始化地图,设置中心点坐标和地图级别this.map.enableScrollWheelZoom()                    // 开启鼠标滚轮缩放}}
}
</script>
<style lang="scss" scoped>
/*引入地图样式*/
@import url("../../../public/BMap/css/DrawingManager_min.css");
@import url("../../../public/BMap/css/bmap.css");
/*给地图元素设置宽高*/
#map{width: 100%;height: 90vh;
}
.anchorBL{display:none;
}
</style>

最终的public目录下BMap相关的文件目录如下,目录结构尽量不要改变,否则会报错

其中modules文件夹内的文件内容如下:

文中提到的文件主要是公司提供的,需要下载的同学可以去本文参考的博客找找,地址如下:
百度离线地图JS API V3.0

vue+离线百度地图相关推荐

  1. vue集合离线百度地图

    vue集合离线百度地图 vue.js百度地图api离线 发布于 1月9日 一.需求场景 所谓离线,大概都是项目在内网中使用,无法连接外网,所以需要开发离线地图功能. 在看以下步骤前,先提示这个vue项 ...

  2. html引入百度地图报错,vue引入百度地图BMapGL,或者其他个性化地图

    3.jpg vue的百度地图早就有vue-baidu-map这里就不赘述了, 自己去直接对着API写就好了,基本上已经满足绝大多数需求了还简单方便. vue-baidu-map 传送门 https:/ ...

  3. qaxwidget传递参数到html,记一次QT使用QAxWidget打开.html文件调用显示离线百度地图不能缩放,自定义图片不能显示解决方法...

    主要问题: 一开始用的是在线的,都没有什么问题,自定义图片均可以显示,可是后面试了一下离线百度地图,在qt中运行打开.html文件和在电脑上面直接双击打开此文件显示是有差别的,在qt生成的程序中,地图 ...

  4. Vue引用百度地图API

    Vue引用百度地图API 一. 通过官网申请ak 1. 打开百度地图官网,在开发文档中找到JavaScript API 2.点击账号和获取密钥 3.按照页面步骤操作即可 二. 通过模块化引入 1. 安 ...

  5. vue使用百度地图获取位置信息

    vue使用百度地图获取位置信息 最近再做H5页面,就一个单页面,进来的时候,要获取地理位置,上代码 1.使用srcipt不受同源策略的影响,来获取百度api 写在了一个bmap.js里面,onBMap ...

  6. vue整合百度地图(关键字检索)

    百度地图 文章目录 百度地图 一.申请百度地图的密钥 二.官方示例 三.使用vue整合百度地图步骤说明 3.1 效果图: 3.2 方式一 vue脚手架2.0版本引用(不推荐): 3.3 方式二 封装成 ...

  7. Vue+Echarts+百度地图 小例子

    刚学完Echarts后,看到一些官方例子,粘贴代码下来却实现不了相应的效果,经过一番了解,发现还要引入百度地图,记录详细过程如下. 1.安装echarts(使用3.x,4.x) npm install ...

  8. vue自定义百度地图弹窗

    vue自定义百度地图弹窗 1.全局注册方式 1.1 引入百度地图和百度地图自定义弹窗js(自己去百度api里面下载就可以了) <!DOCTYPE html> <html lang=& ...

  9. VUE使用百度地图插件

    VUE使用百度地图插件 实现功能 百度地图的使用 相关代码片段 实现功能 需求: 使用百度地图插件, 实现手动定位, 获取经纬度地址; 设置经纬度定位; 地址搜索 百度地图的使用 参考 Vue Bai ...

  10. Vue+Echarts+百度地图API

    Vue+Echarts+百度地图API 不容易啊,又注册了一个地图账户 使用npm安装方式 去百度地图官网申请key,也就是地图API密钥AK 在vue项目的public文件夹中的index.html ...

最新文章

  1. 管理索引表:深入研究B树索引--重建,合并,删除(理论篇3)
  2. 荣品瑞星微RK3399-RP3399开发板
  3. oracle统计信息收集的作用,oracle 11g 收集统计信息的新特点介绍
  4. Python将被加入高考科目?你怎么看?
  5. 在windowService用Process.Start()启动程序没有界面-记录
  6. 人工智能会终结就业吗?
  7. 关于mAdapter.notifyDataSetChanged()无效问题
  8. 小麦亩产一千八(jzoj 3461)
  9. python各种数据类型的常用方法_Python之数据类型的常用方法
  10. 【转载】shell实例手册
  11. java并发编程(2)--线程 原子性 volatile AtomicInteger
  12. Spring Boot电商项目53:订单模块二:【前台:创建订单】接口;(这个接口比较复杂,内容较多)
  13. 饭后Android 第二餐-复选框CheckBox+开关按钮Switch+单选按钮RadioButton
  14. 天津大学仁爱学院c语言期末考试题,天津大学仁爱学院2014-2015学年第1学期期末C语言复习.doc...
  15. 阿里云邮推定制版 首创按量计费模式
  16. 全球变化生态学尔雅课答案
  17. easy connect显示‘网络请求异常请稍后重试’
  18. 自强脱贫•助残共享 2019第二十九个全国助残日在深圳举办
  19. 万国数据登陆纳斯达克 宣布首次公开发行股票定价
  20. ubuntu无法桌面显示,显卡驱动出错,分辨率不能选择,ssh端终命令操作更新显卡驱动

热门文章

  1. 如鹏网.Net基础2 第六章:MYSQL
  2. 手把手教你安装Xposed框架+JustTrustMe抓取手机APP数据
  3. 北京功略----玩水篇
  4. 中文语句情感分类系统的设计与实现
  5. 常见的技术文档英文单词
  6. win10系统玩部分老游戏时提示0xc0000022的解决方法.
  7. HUAWEI OSPF配置
  8. 转载 elm中文手册
  9. 舵机控制原理/舵机内部电路原理
  10. 在线作诗,做诗机,一键生成藏头诗,藏头诗在线制作,藏头诗生成器, 姓名藏头诗,姓名作诗