vue怎么整合百度地图显示指定地点信息
发表于:2024-09-23 作者:千家信息网编辑
千家信息网最后更新 2024年09月23日,这篇文章主要讲解了"vue怎么整合百度地图显示指定地点信息",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"vue怎么整合百度地图显示指定地点信息"吧!先
千家信息网最后更新 2024年09月23日vue怎么整合百度地图显示指定地点信息
这篇文章主要讲解了"vue怎么整合百度地图显示指定地点信息",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"vue怎么整合百度地图显示指定地点信息"吧!
先看看效果图
一、安装相关依赖
npm i --save vue-baidu-map
二、在main.js中引用
import BaiduMap from "vue-baidu-map"Vue.use(BaiduMap,{ ak: '你的密钥(百度地图开放API官网可免费申请)'})
三、创建地图工具 map.js
export function MP(ak) { return new Promise(function (resolve, reject) { window.init = function () { resolve(BMap) } var script = document.createElement("script"); script.type = "text/javascript"; script.src = "http://api.map.baidu.com/api?v=2.0&ak="+"你的密钥"+"&callback=init"; script.onerror = reject; document.head.appendChild(script); }) }
在需要用到地图的文件引入该工具
import { MP } from "@/utils/map.js";
四、绘制地图
1、创建一个容器展示地图,给容器指定一个id,根据页面的具体需求指定容器的宽和高
2、在data中定义需要用到的数据
data() { return { dialogMap: false, mapPointName: "", mapGetshow: true }}
3、定义全局的map地图对象和geocoder地理编码对象
var map;let geoc = null;
4、创建一个定位地点的方法,添加要展示的地点的名称,此处也可动态指定
mapNameChange() { let that = this, point, marker = null; let local = new BMap.LocalSearch(map, { renderOptions: { map: map }, onSearchComplete: (res) => { if (local.getResults() != undefined) { map.clearOverlays(); //清除地图上所有覆盖物 if (local.getResults().getPoi(0)) { point = local.getResults().getPoi(0).point; //获取第一个智能搜索的结果 map.centerAndZoom(point, 10); marker = new BMap.Marker(point); // 创建标注 map.addOverlay(marker); // 将标注添加到地图中 marker.enableDragging(); // 可拖拽 geoc.getLocation(point, function (rs) { var addComp = rs.addressComponents; that.mapPointName = addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber; }); } else { console.log("未搜索到结果") } } else { alert("未搜索到结果"); } }, }); local.search("岳阳楼"); //要展示的地点 },
5、在mounted函数中调用上述方法并绘制地图
mounted() { this.$nextTick(function () { var _this = this; MP(_this.ak).then((BMap) => { let that = this; this.dialogMap = !this.dialogMap; if (that.mapGetshow) { map = new BMap.Map("container"); //存放地图容器的id geoc = new BMap.Geocoder(); map.enableScrollWheelZoom(); } _this.mapNameChange() //调用定位地点的方法 }); }); }
感谢各位的阅读,以上就是"vue怎么整合百度地图显示指定地点信息"的内容了,经过本文的学习后,相信大家对vue怎么整合百度地图显示指定地点信息这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
地图
地点
信息
整合
容器
方法
结果
学习
搜索
内容
密钥
对象
工具
定位
免费申请
全局
函数
动态
名称
地理
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器稳定性检测软件
当今主流的数据库技术是
浪潮软件开发面试
软件开发用到的框架指什么
免费数据库架构
ns暗黑2线上无法连接服务器
软件开发 名词 里程碑
三国志战略版陕西服务器
网络技术属于大数据类吗
低压i7做软件开发
奇迹mu服务器名称修改
戴尔服务器的管理口6
xp自带数据库
长沙网络安全线下培训
数据库备份方式中
服务器外网数据传输安全
图灵奖获得者照片数据库
香港服务器搭免流
软件开发审批流程
cs1.6服务器搜不到
关于软件开发的作文可以复制
数据库合并access
中国人的四点数据库
数据库测试属于的测试类型是
双生幻想官方是什么服务器
国企软件开发是外包吗
远程服务器开发
复制数据库的结构
剑网1服务器表
信息网络安全三个时代划分是