小白的高德地图初体验(一) —— 打点
小白的高德地图初体验(一)——打点
说到高德地图,肯定要推荐官方文档,☛☛☛传送门,走你~~
☞☞小白的高德地图初体验(一) —— 打点
☞☞小白的高德地图初体验(二)——点聚合
☞☞小白的高德地图初体验(三) —— 轨迹
☞☞小白的高德地图初体验(四) —— 矢量图形
☞☞小白的高德地图初体验(五)—— 信息窗体
环境是vue,用的是插件 —— amap.client.js。
大概就长这样的 ☟☟☟
export function MapLoader() {let amap = new Promise((resolve, reject) => {if (window.AMap) {resolve(window.AMap)} else {creatScript("amap", reject)}window.initAMap = () => {resolve(window.AMap)}})let amapUi = new Promise((resolve, reject) => {if (window.AMapUI) {resolve(window.AMapUI)} else {creatScript("amapUi", reject, () => {resolve(window.AMapUI)})}})let loca = new Promise((resolve, reject) => {if (window.Loca) {resolve(window.Loca)} else {creatScript("amapLoca", reject)resolve(window.Loca)}})return Promise.all([amap, amapUi, loca]).then(result => {return result}).catch(e => {console.log(e)})
}function creatScript(name, reject, cb) {let srcswitch (name) {case "amap":src ="//webapi.amap.com/maps?v=1.4.13&callback=initAMap&key=9f4bf7a493367c3458ccad717705d3b3&plugin=AMap.DistrictLayer,AMap.MouseTool,AMap.TileLayer,AMap.Geocoder,AMap.PolyEditor"breakcase "amapUi":src = "//webapi.amap.com/ui/1.0/main-async.js"breakcase "amapLoca":src = "https://webapi.amap.com/loca?key=9f4bf7a493367c3458ccad717705d3b3&v=1.2.1"break}let script = document.createElement("script")script.type = "text/javascript"script.src = srcscript.onerror = rejectscript.onload = cbdocument.head.appendChild(script)
}
一、初始化
<template><div class="child-container"><div title="地图详情" width="800px" class="form-dialog"><div id="map" class="map" /></div></div>
</template><script>
import { MapLoader } from "@/plugins/amap.client.js"
export default {data() {return {AMap: {},maps: {},marker: {},infoWindow: {}}},watch: {},created() {this.initMap()},methods: {initMap() {MapLoader().then(() => {this.AMap = window.AMaplet { AMap } = thisthis.maps = new AMap.Map("map", {resizeEnable: true,center: [116.368904, 39.923423],zoom: 15}) })}}
}
</script>
这样就能获取一个地图了,喏张这样。在这里提示一下一定要给地图一个长宽,不然就会疑惑半天自己的地图去哪了。接下来我们就会在这个基础上做一系列的操作。
二、打点
接下来我们看看如何在地图上打一个点(当然这是写死的,固定的一个点)
在initMap()
方法中添加
//打点一个点
this.marker = new AMap.Marker({position: [116.368904, 39.923423]
})
this.maps.add(this.marker)
//多个点
let lng = [[119.369904, 39.983423],[119.368904, 39.923423],[119.358904, 39.923423]
]
for (let i = 0; i < lng.length; i++) {this.marker = new AMap.Marker({position: lng[i]})this.maps.add(this.marker)
}
this.maps.setFitView()
- 自适应
点很多的时候,不一定能全部展示出来 ,可以用**maps.setFitView()
**,调整视图到合适的显示范围。
当你不需要这个点的时候可以用 this.maps.remove(this.marker);
来删除点,更多方法请看文档~
三、获取经纬度
当我们点击地图的时候怎么获取经纬度呢?
this.maps.on("click", e => {console.log(this.maps)console.log(e)console.log(e.lnglat.getLng())console.log(e.lnglat.getLat())})
这样就能看到获取到经纬度了,和我一样的前端小白只能多打印看看这些东西是个啥啦,也是学习的一种方法哦~~~
四、升级版的打点
刚刚我们学会了怎么标记点和怎么获取经纬度,这样我们就可以做一个,鼠标点击之后标记点的效果。
在initMap()
方法中添加
this.maps.on("click", e => {let lng = e.lnglat.getLng()let lat = e.lnglat.getLat()this.addMarker([lng, lat])
})
另写一个方法
addMarker([lng, lat]) {let { AMap } = thisthis.marker = new AMap.Marker({position: [lng, lat],icon: new AMap.Icon({size: new AMap.Size(24, 36),image: this.$getEventIcon("dw"),imageSize: new AMap.Size(24, 36),imageOffset: new AMap.Pixel(0, 0)})})this.maps.add(this.marker)
}
喏效果就这样啦,红色的点就是我鼠标标记的点~~~
- 自定义标记点
可以通过 icon 设置点的样式,就像 addMark 方法里面一样设置一下就可以了,或者,向已创建好的 Marker 添加 Icon:
var icon = new AMap.Icon({...
});
marker.setIcon(icon);
大概常用的就是这些,更多可以看官网。
有缘再见ヾ( ̄▽ ̄)Bye~Bye~
小白的高德地图初体验(一) —— 打点相关推荐
- 小白的高德地图初体验(四)—— 矢量图形
小白的高德地图初体验(四)-- 矢量图形 这里是官方文档☛☛☛传送门,走你~~ ☞☞小白的高德地图初体验(一) -- 打点 ☞☞小白的高德地图初体验(二)--点聚合 ☞☞小白的高德地图初体验(三) - ...
- 地图上分成一块一块区域 高德地图_各种地图(如百度地图、腾讯地图和高德地图)体验上有什么区别?...
文末有更新 ----------------------- 见图,来体验一下2015年12月7日的百度地图,我真是无话可说 我从来没有搜索过这种东西. 这问题我也@了客服,现在不知道还有没有. 呵呵, ...
- Echarts地图初体验
根据黑马pink老师的视频制作的echarts地图 最近沉迷P社的钢4,断断续续几天才做好 效果预览 echart拿来做这种动态图还是不错的 官网百度的echarts 仓库地址 链接: link. h ...
- Echarts GL 3d地图初体验,浙江天地图作为底图mapbox
网上看到一张图效果非常好,斜45度角模式的3d地图,用在大屏模式上非常有科技感,高端大气上档次. 于是,研究了下怎么做,发现Echarts GL能做出相似的描边3D效果,地图可以加载浙江天地图(如下图 ...
- 高德地图自定义图标的点标记Marker--初体验(二)
点标记Marker 创建一个默认图标的点标记: 创建一个自定义图标的点标记: new AMap.Marker({}) 参数说明 本文以Marker为主,其他点标记方法大差不差 通过上两篇文章我们已经了 ...
- 高德地图API路线规划
高德地图API基础使用 高德地图API体验 申请Key 初体验 添加插件 点击事件返回地址值 两点之间获取驾车导航路线 高德地图API体验 申请Key 申请高德地图账号 登录后,应用管理下创建自己的应 ...
- 功能全面丰富优化 高德地图上线景区导览图及身边事功能
近日,最新版高德地图迎来了功能更新,不仅在智慧景区服务中加入了景区导览图功能,还在"小区详情页"的基础上增加了新的新闻资讯入口,推出身边事功能,让你在更方便使用地图游览景区的同时, ...
- [LBS学习笔记 1]高德数据可视化初体验
高德数据可视化初体验 背景 换了新工作,虽然还是java开发,但是之前搞做在线教育的,现在做地图相关的事.因此,花了些时间学了空间索引相关的内容,后期会写关于空间索引相关的内容,这期写地理数据可视化相 ...
- 全新界面改版+实用功能上线 高德地图新版全体验
全国大部分地区已进入踏青季,为了让人们的出行更加便捷,国内领先的移动互联网地图软件高德地图推出了全新的7.6.6版本,从功能.体验.视觉三个方面都取得了突破性的改进.一目了然的是其UI界面有了很大的变 ...
最新文章
- skywalking告警相关配置
- WCF 第四章 绑定 netMsmqBinding
- 放弃winform的窗体吧,改用html作界面,桌面应用程序UI的新的开发方式。
- oracle 12 ORA-01262,oracle物理dg安装:方法二
- To 研究生,第一:做学位论文期间,不要有任何度假休息的打算;第二,导师错的时候不多;第三……...
- uni app map 地图 漂浮问题及方案
- 软考信息系统项目管理师_信息系统项目管理基础---软考高级之信息系统项目管理师009
- Oracle 升级(10.2.0.1 -- 10.2.0.4) 包含升级包
- Python抓取打印机硒鼓和组件剩余量的爬虫
- 计算机视觉图像去噪原理,图像去噪方法研究进展
- DataFrame创建程序利用字典创建dataframe对象
- vue中用echarts写条形图
- 易语言API HooK CreateThread创建线程
- JS - Promise使用详解--摘抄笔记
- Qt小例子学习52 - 卡片游戏
- 计算机键盘如何打字课件,教您如何熟悉键盘(打字指法)_计算机的基本知识_IT /计算机_信息...
- 关于线程同步的几种方法
- 在设备上开启telnet服务
- PCL1.10.1+VS2019+Qt5.14.2下载、安装及配置(强迫症福音~使用的软件均为最新版本)
- xp系统打印机服务器win7连接不了,xp不能访问win7共享打印机