vue接入腾讯地图(一)【点击事件】请参考:
https://segmentfault.com/a/1190000023890670
1、【标注】
增加标注
var marker = new qq.maps.Marker({ position: myLatlng , map: map});
文本标注
var marker = new qq.maps.Label({ position: myLatlng, map: map, content:'文本标注'});
成果
自定义标注图标
var anchor = new qq.maps.Point(300, 0), size = new qq.maps.Size(600, 680), origin = new qq.maps.Point(-150, 0), markerIcon = new qq.maps.MarkerImage( "/static/images/position.png", size, origin, anchor ); marker.setIcon(markerIcon);
预览
定位logo
官网预览https://lbs.qq.com/javascript_v2/case-run.html#sample-overlay-addmarkerimage
为什么会有这么大区别呢,因为这是图片的问题一个大一个小,还须要稍加调整,展现官网定位图片
2、【定位实战→qq.maps.Geolocation】
- 引入js包(留神:vue我的项目得在首页的index.html外面引入)
<script charset="utf-8" src="https://map.qq.com/api/js?v=2.exp&key=yourkey"></script>//这个是固定的用这个链接就能够<script src="https://3gimg.qq.com/lightmap/components/geolocation/geolocation.min.js"></script>
三步走
<template> <div id="container" style="width:600px;height:500px;"></div></template><script> export default{ name:'news', data() { return { longitude:0,//经度 latitude:0,//纬度 city:'' } }, methods:{ //第一局部 //定位取得以后地位信息 getMyLocation() { var geolocation = new qq.maps.Geolocation("yourkey", "yourkey名称"); geolocation.getIpLocation(this.showPosition, this.showErr); //geolocation.getLocation(this.showPosition, this.showErr);//或者用getLocation精确度比拟高 }, showPosition(position) { console.log(position); this.latitude = position.lat; this.longitude = position.lng; this.city = position.city; this.setMap(); }, showErr() { console.log("定位失败"); this.getMyLocation();//定位失败再申请定位,测试应用 },//第二局部 //地位信息在地图上展现 setMap() { //步骤:定义map变量 调用 qq.maps.Map() 构造函数 获取地图显示容器 //设置地图中心点 var myLatlng = new qq.maps.LatLng(this.latitude,this.longitude); //定义工厂模式函数 var myOptions = { zoom: 13, //设置地图缩放级别 center: myLatlng, //设置中心点款式 mapTypeId: qq.maps.MapTypeId.ROADMAP //设置地图款式详情参见MapType } // //获取dom元素增加地图信息 var map = new qq.maps.Map(document.getElementById("container"), myOptions);//第三局部 //给定位的地位增加图片标注 var marker = new qq.maps.Marker({ position: myLatlng, map: map }); //给定位的地位增加文本标注 var marker = new qq.maps.Label({ position: myLatlng, map: map, content:'这是我以后的地位,偏差有点大,哈哈' }); } }, mounted() { this.getMyLocation(); } }</script>
开发者用的时候能够一步一步去实现,保障每一步都实现后再进行下一步
申请key地址
https://lbs.qq.com/console/my...
官网文档
https://lbs.qq.com/tool/compo...
https://lbs.qq.com/javascript...
以上内容转载自前端来入坑的文章《vue应用腾讯地图(三)标注》链接:https://www.jianshu.com/p/eca...
起源:简书
著作权归作者所有。商业转载请分割作者取得受权,非商业转载请注明出处。