vue项目使用个性化离线百度地图

引言: 由于项目使用在交警内网,无法使用百度在线地图.并且由于种种限制使用了望远网百度离线地图.此使用方法实在vue2.0项目上使用,没在vue3上使用过.

1,因为我使用的是望远网的矢量地图,所以需要下载望远网线下工具

http://www.wmksj.com/script.html   打开地址后下载

2,打开地址  http://www.wmksj.com/map.html

打开如上图页面,第一步,选择个性地图矢量地图;第二步,点击编辑json样式,把你在百度地图上设置的个性化样式json复制到内容框里面;第三步,选择你要下载地图卡片的区域;第四步,在地图上右键下载

 3.现在需要使用到第一步下载的工具包

找到此文件双击出现上图右边app.输入望远网账号和密码,选择主题为自定义样式,把前面复制的坐标粘贴到输入坐标框上面,选择保存路径,选择webGL矢量,勾选要下载的瓦片,点击开始下载,这样就可以下载到你想要的矢量地图.

如何在vue项目中使用

1.打开http://www.wmksj.com/script.html 选择如下图文件

下载完成解压后找到如下图offlinemap文件, 

 把offlinemap文件放在vue项目public下的static文件下

2.把我们最先下载好的矢量图片放在offlinemap文件下的 tiles_v文件里面

 3,在vue项目入口文件index.html引入如下文件,

 4.组件页面使用(暂时没找到支持vue-baidu-map组件的方法)

<template>
<div>
	<div>this is a test</div>
  <div id="map_container" style="width: 100%; height: 500px;"></div>
  </div>
</template>
<script>
    export default {
        data() {
            return{

            }
        },
        mounted () {
            this.$nextTick(() => {
                this.drawMap()
            })
        },
        methods: {
            drawMap () {
              var map = new window.BMapGL.Map("map_container");    // 创建Map实例
              //初始化地图,设置中心点坐标和地图级别
              map.centerAndZoom(new BMapGL.Point(121.56847909,29.8100979777), 17)
              //开启鼠标滚轮缩放
              map.enableScrollWheelZoom(true);

              var navi3DCtrl = new BMapGL.NavigationControl3D();  // 添加3D控件
              map.addControl(navi3DCtrl);

              var scaleCtrl = new BMapGL.ScaleControl();  // 添加比例尺控件
              map.addControl(scaleCtrl);

              var zoomCtrl = new BMapGL.ZoomControl();   // 添加缩放控件
              map.addControl(zoomCtrl);

              map.setMapStyleV2({styleJson: stylejson});
            }
        }
	}

</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
html, body, #map_container{
			width: 100%;
			height: 100%;
			overflow: hidden;
			margin:0;
		}

		.BMap_cpyCtrl {
			display: none;
		}

		.anchorBL {
			display: none;
		}

		.BMap_mask {
			z-index: 999;
		}
</style>

最后说明一下,一般下载的瓦片数量比较打,我后面使用了nginx代理,这样就不用把这么多的瓦片放在前端.具体方法就是需要后端给你一个nginx地址,只需要把引用地址更换一下就可以,下面是具体更换位置

 

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 23
    评论
### 回答1: vue-baidu-map是基于百度地图API开发Vue组件,它能够在Vue项目轻松地集成百度地图。而离线百度地图是指在没有网络连接的情况下能够使用百度地图。 正常情况下,百度地图需要联网才能显示地图和获取相关数据。但是在有些场景下,比如地下车库或者偏远山区等网络较差或者没有网络的地方,就无法正常使用百度地图离线百度地图就是解决这个问题的解决方案,它通过事先将地图数据下载保存在本地,使得在没有网络连接的情况下也能够正常使用百度地图。 对于vue-baidu-map来说,它的离线功能也是很重要的。通过使用vue-baidu-map的离线百度地图开发者可以轻松地针对不同的场景选择不同的地图方案,提高用户的使用体验。而且离线百度地图对于一些隐私性、安全性要求高的应用场景也更加有优势。 总之,vue-baidu-map离线百度地图是一个非常实用与方便的工具,在实际生产可以提供更好的用户体验,也为开发者提供了更多的选择与便捷。 ### 回答2: vue-baidu-map离线百度地图是一款基于Vue.js框架开发百度地图组件库,主要解决的是在无网络或网络不稳定的情况下,无法使用在线地图的问题。该组件库提供的离线地图可以在无网络的情况下正常使用,并且具有与在线地图相同的功能和可视化效果。 在vue-baidu-map离线百度地图组件,我们可以使用百度地图提供的基础地图、卫星地图、混合地图等多种地图样式,并且支持地名搜索、地图缩放、位置探测、路线规划等常用功能。此外,在使用vue-baidu-map离线百度地图时,我们也可以通过添加自定义数据层、自定义覆盖层等方式,对地图进行更加丰富的扩展和定制。 总之,vue-baidu-map离线百度地图是一款非常实用的地图组件库,它可以帮助我们在网络不稳定或者无网络的情况下,依然可以正常使用百度地图,并且具有完整的百度地图功能和美观的地图样式。如果你正在建设一个应用程序,需要集成离线地图功能,那么vue-baidu-map离线百度地图可能正是你需要的工具。 ### 回答3: vue-baidu-map是一个可嵌入Vue.js网站的地图组件,它集成了百度地图的API,可以让开发者轻松实现地图功能。 离线百度地图指的是一种不需要联网即可使用百度地图,也就是地图数据被下载到本地储存设备上。vue-baidu-map支持使用离线地图,这就意味着用户可以在没有网络的环境下依然能够使用地图功能。 使用vue-baidu-map离线百度地图的优势在于,它提供了更好的用户体验和更高的灵活性。首先,用户无需担心网络不稳定、信号弱的问题,可以随时随地使用地图进行定位、浏览、搜索等操作;其次,开发者可以根据具体需求选择下载特定区域的地图数据,以减少数据流量和缩短加载时间;还可以根据不同需求切换在线地图离线地图,达到最佳的用户体验。 总之,vue-baidu-map离线百度地图开发者提供了便捷灵活的地图开发工具,让用户可以更加自由地使用地图服务。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值