5.1、Methods for Modifying Map State(地图状态修改)
5.2、 Methods for Getting Map State(获取地图状态)
5.3、Methods for Layers and Controls(图层控制)
5.4、 Conversion Methods(转换方法)
5.5、Other Methods(其他方法)
6、属性
7、其他相关
7.1 、Locate options(位置选项)
7.2、Map Panes(地图窗口)
Vue 2.6+Leaflet1.6(二):Map地图篇
============================
接上篇,上篇搭建了一个基于vue2.6 和leaflet1.6的项目工程,让工程能跑得起来,今天正式开始说说leaflet的使用。
所有GIS的API起步阶段几乎都是地图map的概念。
一、map简介
=======
map类是基础和核心,主要作用是页面中创建地图并且对地图操作。
二、map创建
=======
L.map( id,
示例:
// initialize the map on the “map” div with a given center and zoom
var map = L.map(‘map’, {
center: [51.505, -0.09],
zoom: 13
});
三、map选项
=======
所有的选项如何使用,参考下面代码:
L.map(‘map’, {
//这里面放的就是各种选项,其值可以根据查官网
center: [51.505, -0.09],
zoom: 13
zoomControl: true,
scrollWheelZoom:true //默认开启鼠标滚轮缩放
});
3.1 Map State Options(地图状态选项)
centre(中心):初始化地图的地理中心。
zoom(缩放):初始化地图的缩放。
layers(图层):初始化后加载到地图上的图层。
minZoom(最小视图):地图的最小视图。可以重写地图图层的最小视图。
maxZoom(最大视图):地图的最大视图。可以重写地图图层的最大视图。
maxBounds(最大边界):当这个选项被设置后,地图被限制在给定的地理边界内,当用户平移将地图拖动到视图以外的范围时会出现弹回的效果,并且也不允许缩小视图到给定范围以外的区域(这取决于地图的尺寸)。使用setMaxBounds方法可以动态地设置这种约束。
crs(坐标参考系统):使用的坐标系,当你不确定坐标系是什么时请不要更改。
3.2 Interaction Options(地图交互操作)
dragging(拖动):决定地图是否可被鼠标或触摸拖动。
touchZoom(触摸缩放):决定地图是否可被两只手指触摸拖拽缩放。
scrollWheelZoom(滚轮缩放):决定地图是否被被鼠标滚轮滚动缩放。
doubleClickZoom(双击缩放):决定地图是否可被双击缩放。
boxZoom(多边形缩放):决定地图是否可被缩放到鼠标拖拽出的矩形的视图,鼠标拖拽时需要同时按住shift键。
trackResize(追踪尺寸改变):确定地图在窗口尺寸改变时是否可以自动处理浏览器以更新视图。
worldCopyJump(领域副本跳转):当这个选项可用时,当你平移地图到其另一个领域时会被地图捕获到,并无缝地跳转到原始的领域以保证所有标注、矢量图层之类的覆盖物仍然可见。
closePopupOnClick(点击关闭消息弹出框):当你不想用户点击地图关闭消息弹出框时,请将其设置为false。
3.3 Keyboard Navigation Options(键盘操纵选项)
keyboard(键盘):聚焦到地图且允许用户通过键盘的方向键和加减键来漫游地图。
keyboardPanOffset(键盘平移补偿):确定按键盘方向键时地图平移的像素。
keyboardZoomOffset(键盘缩放补偿):确定键盘加减键对于的缩放级数。
3.4 Panning Inertia Options(平移惯性选项)
inertia(惯性):如果该选项可用,在拖动和在某一时间段内持续朝同一方向移动建有动力的地图时,会有惯性的效果。
inertiaDeceleration(惯性减速):确定惯性移动减速的速率,单位是像素每秒的二次方。
inertiaMaxSpeed(惯性最大速度):惯性移动的最大速度,单位是像素每秒。
inertiaThreshold(惯性阈值):放开鼠标或是触摸来停止惯性移动与移动停止之间的毫秒数。
3.5 Control options(控制选项)
zoomControl(缩放控制):确定缩放控制按钮是否默认加载在地图上。
attributionControl(属性控制):确定属性控制按钮是否默认加载在地图上。
3.6 Animation options(动画选项)
fadeAnimation(淡出动画):确定瓦片淡出动画是否可用。通常默认在所有浏览器中都支持CSS3转场,android例外。
zoomAnimation(缩放动画):确定瓦片缩放动画是否可用。通常默认在所有浏览器中都支持CSS3转场,android例外。
markerZoomAnimation(注记缩放动画):确定注记的缩放是否随地图缩放动画而播放,如果被禁用,注记在动画中拉长时会消失。通常默认在所有浏览器中都支持CSS3转场,android例外
4、Events(事件)
============
click(点击):用户点击或触摸地图时触发。
dbclick(双击):用户双击或连续两次触摸地图时触发。
mousedown(鼠标按下):用户按下鼠标按键时触发。
mouseup(鼠标抬起):用户按下鼠标按键时触发。
mouseover(鼠标经过):鼠标进入地图时触发。
mouseout(鼠标移出):鼠标离开地图时触发。
mousemove(鼠标移动):鼠标在地图上移动时触发。
contextmenu(情景菜单):当用户在地图上按下鼠标右键时触发,如果有监听器在监听这个时间,则浏览器默认的情景菜单被禁用。
focus(聚焦):当用户在地图上进行标引、点击或移动时进行聚焦。
blur(变暗):当地图失去焦点时触发。
preclick(预先点击):当鼠标在地图上点击之前触发。有时会在点击鼠标时,并在已存在的点击事件开始处理之前想要某件事情发生时用得到。
load(载入):当地图初始化时触发。(当地图的中心点和缩放初次设置时)
viewreset(视图重置):当地图需要重绘内容时触发。(通常在地图缩放和载入时发生)这对于创建用户自定义的叠置图层非常有用。
movestart(移动开始):地图视图开始改变时触发。(比如用户开始拖动地图)
move(移动):所有的地图视图移动时触发。
moveend(移动结束):当地图视图结束改变时触发。(比如用户停止拖动地图)
dragstart(拖动开始):用户开始拖动地图时触发。
drag(拖动):用户拖动地图时不断重复地触发。
dragend(拖动结束):用户停止拖动时触发。
zoomstart(缩放开始):当地图缩放即将发生时触发。(比如缩放动作开始前)
zoomend(缩放结束):当地图缩放时触发。
autopanstart(自动平移开始):打开弹出窗口时地图开始自动平移时触发。
layeradd(添加图层):当一个新的图层添加到地图上时触发。
layerremove(图层移除):当一些图层从地图上移除时触发。
baselayerchange(基础图层改变):当通过图层控制台改变基础图层时触发。
locationfound(位置查找):当地理寻址成功时触发(使用locate方法)。
locationerror(定位错误):当地理寻址错误时触发(使用locate方法)。
popupopen(打开弹出框):当弹出框打开时触发(使用openPopup方法)。
popupclose(关闭弹出框):当弹出框关闭时触发(使用closePopup方法)。
五、方法
====
使用方式参考如下:
this.map.setView([51.505, -0.09], 13); //具体的参数可以参考官网
5.1、Methods for Modifying Map State(地图状态修改)
setView(设定视图):设定地图(设定其地理中心和缩放),如果forceReset设置的是true,即使移动和缩放动作是合理的,地图也会重载,其默认值是fault。
setZoom(设定缩放):设定地图的缩放。
zoomIn(放大):通过delta变量放大地图的级别,1是delta的默认值。
zoomOut(缩小):通过delta变量缩小地图的级别,1是delta的默认值。
fitBounds(使适合边界):将地图视图尽可能大地设定在给定的地理边界内。
fitWorld(使适合地域范围):将地图视图尽可能大地设定在包含全部地域的级别上。
panTo(平移至中心点):将地图平移到给定的中心。如果新的中心点在屏幕内与现有的中心点不同则产生平移动作。
panInsideBounds(平移到某边界内):平移地图到坐落于给定边界最接近的视图内。
panBy(通过像素点平移):通过给定的像素值对地图进行平移。
invalidateSize(无效的大小):检查地图容器的大小是否改变并更新地图,如果是这样的话,在动态改变地图大小后调用,如果animate是true的话,对地图进行更新。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
算法
-
冒泡排序
-
选择排序
-
快速排序
-
二叉树查找: 最大值、最小值、固定值
-
二叉树遍历
-
二叉树的最大深度
-
给予链表中的任一节点,把它删除掉
-
链表倒叙
-
如何判断一个单链表有环
由于篇幅限制小编,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
、实战项目、讲解视频,并且后续会持续更新**
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-t7D99r8p-1712116352416)]
算法
-
冒泡排序
-
选择排序
-
快速排序
-
二叉树查找: 最大值、最小值、固定值
-
二叉树遍历
-
二叉树的最大深度
-
给予链表中的任一节点,把它删除掉
-
链表倒叙
-
如何判断一个单链表有环
[外链图片转存中…(img-ULcFVITl-1712116352416)]
由于篇幅限制小编,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!