vue中使用leaflet地图
根据项目需要学习GIS地图
文章目录
前言
GIS地图学习一、引入leaflet地图及插件
npm导入leaflet地图
npm install leaflet
完成后在main.js中引入(可全局引入也可单独引入)
import L from "leaflet";
import 'leaflet/dist/leaflet.css'
二、封装创建地图方法
1.创建一个文件夹map在文件夹下创建js文件map.js
2.封装创建地图实例方法
代码如下(示例):
import L from "leaflet";
import 'leaflet.pm'
import 'leaflet.pm/dist/leaflet.pm.css'
//定义地图实例
const newMap = (domId, option) => {
let map = L.map(domId, option)
return map
}
//切片图层
const createLayers = (map, url, option) => {
let newLeayer = L.tileLayer(url, option)
newLeayer.addTo(map)
return newLeayer
}
//leaflet.ChineseTmsProviders插件加载地图
const chinaLayers = (map, url, option) => {
let chinaLeayer = L.tileLayer.chinaProvider(url, option)
chinaLeayer.addTo(map)
return chinaLeayer
}
export default {
newMap,createLayers,chinaLayers}
leaflet.pm插件可添加一些地图工具(如:画点,画圆,画矩形,画线以及清除编辑功能)
leaflet.chinatmsproviders插件可加载各种地图(如:智图地图,谷歌地图,高德地图等包含卫星地图)
npm i leaflet.pm
npm i leaflet.chinatmsproviders
在main.js中引入两个插件
import 'leaflet.pm'
import 'leaflet.pm/dist/leaflet.pm.css'
import 'leaflet.chinatmsproviders'
将map.js引入到main.js中,将map.js挂载到Vue上(方便调用)
import map from './map/map.js'
//将m