一、高德地图API

高德地图入门概述

高德地图官方API

高德地图配置项

二、高德地图的概念

包括:显示的地图、图层、点标记与矢量图形、事件功能与信息窗体、高德地图插件(需单独引入,可选择异步加载或同步加载) 。

地图组成:

  1. 地图容器Container
  2. 图层Layers
  3. 矢量图形Vector Overlays
  4. 点标记Markers
  5. 地图控件Map Controls

常用名词:

  1. 插件Plugins
  2. 地图级别 ZoomLevel
  3. 经纬度LngLat
  4. 底图BaseLayer
  5. 地图要素Map Features
  6. 标注Labels
  7. 地图平面像素坐标Plane Coordinates
  8. 投影Projection

基础类:

  1. 经纬度 AMap.LngLat
  2. 像素点 AMap.Pixel
  3. 像素尺寸 AMap.Size
  4. 经纬度矩形边界 AMap.Bounds

三、高德地图的生命周期

1.地图的创建

const map = new AMap.Map('container')

2.地图加载完成

map.on('complete',{})

3.地图的销毁

map.destory() //注销地图实例,释放内存,清空容器

四、常用绑定事件

map.on('click',xxx) //绑定单击事件
map.on('dblclick',xxx) //绑定双击事件map.on('moveend',xxx) //绑定地图移动事件(移动结束触发)
map.on('movestart',xxx) //
map.on('movemove',xxx) //绑定地图移动事件(移动中触发)map.on('zoomend',xxx) //绑定地图缩放事件(缩放结束触发)
map.on('zoomchange',xxx) //
map.on('zoomstart',xxx) //绑定地图缩放事件(缩放开始触发)map.on('dragend',xxx) //绑定地图拖拽事件(拖拽结束触发)
map.on('dragging,xxx) //绑定地图拖拽事件(正在拖拽触发)
map.on('dragstart',xxx) //map.off('moveend',xxx) //解绑对应事件

五、常用设置属性

map.setLang('zh_cn')//设置中英文地图,en、zh_ne、zh_cn
map.getZoom()//获取当前地图级别
map.getCenter()//获取当前地图中心位置
map.setZoom(zoom)//设置地图层
map.setCenter([lng,lat])//设置地图中心点
map.setZoomAndCneter(zoom,[lng,lat])//同时设置地图层级与中心点
map.getCity((info)=>{})//获取地图当前行政区
map.setCity('')//设置地图当前行政区,可通过中文城市名、adcode、citycode等设置地图的中心点map.setFitView(overlays, immediately, avoid, maxZoom)//根据地图上添加的覆盖物分布情况,自动缩放地图到合适的视野级别,参数均可缺省。

可在高德官网下载省市区县对应的abcode、citycode

六、Marker的添加与移除以及某些覆盖物事件

//构造点标记
const marker = new AMap.Marker({icon:'XXX.png',position:[lng,lat]
})
map.add(marker) //添加一个覆盖物
map.remove(marker) //移除一个覆盖物
map.add([marker,marker]) //添加多个覆盖物
map.remove([marker,marker]) //移除多个覆盖物
map.clearMap() //清除地图上所有添加的覆盖物map.getAllOverlays('marker') //获取某类覆盖物,'marker'、'polyline'、'polygon'
//利用extData属性给覆盖物添加id,获取特定的覆盖物
const marker = new AMap.Marker({icon:'',position:[],extData: {id: 1}
}
const id = marker.getExtData().id//从多个点标记中删除指定点
markers[0].setMap(null)

七、覆盖物事件

    var lineArr = [[116.368904, 39.913423],[116.382122, 39.901176],[116.387271, 39.912501],[116.398258, 39.904600]];var circle = new AMap.Circle({map: map,center: lineArr[0],          //设置线覆盖物路径radius: 1500,strokeColor: "#3366FF", //边框线颜色strokeOpacity: 0.3,       //边框线透明度strokeWeight: 3,        //边框线宽fillColor: "#FFA500", //填充色fillOpacity: 0.35//填充透明度});var polygonArr = [[116.403322, 39.920255],[116.410703, 39.897555],[116.402292, 39.892353],[116.389846, 39.891365]];var polygon = new AMap.Polygon({map: map,path: polygonArr,//设置多边形边界路径strokeColor: "#FF33FF", //线颜色strokeOpacity: 0.2, //线透明度strokeWeight: 3,    //线宽fillColor: "#1791fc", //填充色fillOpacity: 0.35, //填充透明度draggable: true //允许覆盖物被拖拽});marker.on('mouseover',xxx) //鼠标移入覆盖物
marker.on('mouseout',xxx) //鼠标移出覆盖物
marker.on('click',xxx) //点击覆盖物//在指定位置打开信息窗体function openInfo() {//构建信息窗体中显示的内容var info = [];info.push("<div><div><img style=\"float:left;\" src=\" https://webapi.amap.com/images/autonavi.png \"/></div> ");info.push("<div style=\"padding:0px 0px 0px 4px;\"><b>高德软件</b>");info.push("电话 : 010-84107000   邮编 : 100102");info.push("地址 :北京市朝阳区望京阜荣街10号首开广场4层</div></div>");infoWindow = new AMap.InfoWindow({content: info.join("<br/>")  //使用默认信息窗体框样式,显示信息内容});infoWindow.on('open',showInfoOpen)infoWindow.on('close',showInfoClose)infoWindow.open(map, map.getCenter());}map.emit('count',count+=1) //触发自定义事件count
map.on('count',(count) => { console.log(count)} )

八、图层

const satellite = new AMap.TileLayer.Satellite({map: map,zIndex: 18, //层级opacity: 0.8 //图层透明度
}) //官方卫星图层
const roadnet= new AMap.TileLayer.RoadNet({map: map
}) //路由图层satellite.setMap(map) //添加图层
satellite.setMap(null) //移除图层
satellite.show() //显示图层
satellite.hide() //隐藏图层satellite.setzIndex(val); //设置图层层级
satellite.setOpacity(val); //设置图层透明度map.add(roadnet) //添加图层
map.remove(roadnet) //移除图层
map.add([satellite,roadnet]) //批量天机图层//也可以直接在map的options属性中添加图层
const map = new AMap.Map('container', {layers:[new AMap.TileLayer(), new AMap.TileLayer.Satellite()]
})new AMap.TileLayer() //高德默认标准图层
new AMap.TileLayer.Traffic() //实时路况图层
new AMap.TileLayer.Satellite() //卫星图
new AMap.TileLayer.Satellite() //路网
new AMap.Buildings() //楼块图层

【高德地图在React项目中的使用——(二)各种配置的使用】相关推荐

  1. html5 调用高德地图,高德地图在h5项目中的集成(点标记)

    关于高德地图在项目中的集成,网上已经有很多相关的很优秀的文章了,故本篇内容仅用于参考和巩固. 1.使用高德地图之前需要在高德开放平台(https://lbs.amap.com/dev/index)创建 ...

  2. react 使用 leaflet 百度地图_【React】react项目中应用百度地图添加起始点绘制路线...

    如图:项目中百度地图的应用添加起始点.终点并绘制路线 在展示代码的时候首先展示一下后台返回给我的接口 { 其中position_list参数代表的是用户的行驶点, area参数代表的是服务区的坐标点, ...

  3. react项目中引入百度地图

    项目目录如下: 在此index.html中加入如下代码即可: <!DOCTYPE html> <html lang="en"><head>< ...

  4. React 项目中使用Echarts

    直接上代码吧: react 项目中添加Echarts 相关模块 npm install echarts --save 代码: import React from 'react' import * as ...

  5. react项目中使用mocha结合chai断言库进行单元测试

    react项目中使用mocha结合chai断言库进行单元测试 git地址:https://github.com/yancekang/... 如果对你有所帮助,感谢start 项目搭建 create-r ...

  6. 优雅的在React项目中使用Redux

    概念 首先我们会用到哪些框架和工具呢? React UI框架 Redux 状态管理工具,与React没有任何关系,其他UI框架也可以使用Redux react-redux React插件,作用:方便在 ...

  7. 如何优雅地在React项目中使用Redux

    前言 或许你当前的项目还没有到应用Redux的程度,但提前了解一下也没有坏处,本文不会安利大家使用Redux 概念 首先我们会用到哪些框架和工具呢? React UI框架 Redux 状态管理工具,与 ...

  8. 中使用js修改变量值_谈一谈css-in-js在React项目中的使用

    一.什么是css-in-js 参考:[css in js 简介] 简单来说,传统的前端方案推崇"关注点分离"原则,HTML.CSS.JavaScript 应该各司其职,进行分离. ...

  9. [react] 在React项目中你用过哪些动画的包?

    [react] 在React项目中你用过哪些动画的包? react-transition-group 个人简介 我是歌谣,欢迎和大家一起交流前后端知识.放弃很容易, 但坚持一定很酷.欢迎大家一起讨论 ...

  10. react前端显示图片_如何在react项目中引用图片?

    如何在react项目中引用图片?本文码云笔记将为大家整理在react项目中插入图片以及背景图片的方法,希望对需要的小伙伴提供一些参考. 在react项目中插入图片以及背景图片的方法共有2种: 1.im ...

最新文章

  1. HTTP简介、请求方法与响应状态码
  2. 【数字孪生】关于数字孪生的冷思考及其背后的建模和仿真技术
  3. 例题2-1 在屏幕上显示一个短句。
  4. Linux服务集群部署实战--MySQL、Redis、ES、RocketMQ、Zookeeper
  5. 842. Split Array into Fibonacci Sequence
  6. mysql 最值复杂查询_MySQL高级查询
  7. NVIDIA Jetson Nano B01 安装Ubuntu 18.04.3 LTS
  8. android图片异步加载解决步骤
  9. SSM框架之Spring MVC(三)http响应、文件上传
  10. 图形学初探(一)图形学基础和基本术语
  11. java语言程序设计第三版电子书百度云_Java语言程序设计(基础篇)(原书第10版) 完整版 中文pdf扫描版[259MB]梁勇...
  12. 大华条码秤开发之-快捷键传输
  13. Codeforces Contest 730 A Toda 2 —— 贪心
  14. 「Snappy」- 使用 snap 安装应用 @20210208
  15. Mysql常用命令行大全(三)
  16. 一看就会(废)的最小二乘法推导
  17. [ZZ]终极工程师的造诣 – 不迷信高科技的乔布斯给我们的启示
  18. 差压艾默生流量计指示为零不工作的4点原因
  19. DOSBOX使用技巧
  20. Spring框架原理 | IOC/DI | Bean

热门文章

  1. linux rpm 装 mac,linux之 rpm,yum
  2. [转载]图论500题
  3. Django数据映射 一对一 一对多 多对多
  4. 【刷题】LOJ 2863 「IOI2018」组合动作
  5. word2016 添加参考文献的方法
  6. maven项目中 org.hibernate.MappingNotFoundException: resource:**.hbm.xml not found问题的解决方案
  7. 『DL笔记』预训练(pre-training/trained)与微调(fine tuning)
  8. win7任务管理器没有的找到方法
  9. 2020年新疆旅游市场遭遇滑铁卢,旅游消费跌至992.12亿元[图]
  10. SourceTree和Bitbucket使用时的注意事项