leaflet-webpack 入門開發系列環境知識點了解:html
- node 安裝包下載
webpack 打包管理工具須要依賴 node 環境,因此 node 安裝包必須安裝,上面連接是官網下載地址- webpack 配置介紹文檔
詳細的 webpack 文檔配置介紹,適合新手查看,我也是邊看邊學- vscode 安裝包下載,我這邊用 vscode工具編譯開發前端項目,我的覺的這款工具還不錯
- leaflet api文檔介紹,詳細介紹 leaflet 每一個類的函數以及屬性等等
- leaflet 在線例子
- leaflet 插件,leaflet 的插件庫,很是有用
leaflet 矢量瓦片
源代碼 demo 下載前端
效果圖以下:
node
本篇主要利用 leaflet 的插件 leaflet.vectorgrid 實現兩種不一樣數據源的矢量瓦片渲染加載效果:webpack
- 調用 geoserver 發佈的 pbf 矢量瓦片服務
- 加載 geojson 數據源渲染矢量瓦片
leaflet.vectorgrid 插件 github 地址:https://github.com/Leaflet/Leaflet.VectorGrid
//加載Pbf形式矢量瓦片函數 function loadVectorPbfLayer() { // var localUrl = "http://localhost:8080/geoserver/gwc/service/wmts?" + // "REQUEST=GetTile&SERVICE=WMTS&VERSION=1.0.0&LAYER=ZKYGIS:bs_spot_t" + // "&STYLE=&TILEMATRIX=EPSG:900913:{z}&TILEMATRIXSET=EPSG:900913&" + // "FORMAT=application/x-protobuf;type=mapbox-vector&TILECOL={x}&TILEROW={y}"; var localUrl = "http://localhost:8080/geoserver/gwc/service/tms/1.0.0/ZKYGIS:bs_spot_t@EPSG:900913@pbf/{z}/{x}/{-y}.pbf"; var localVectorTileOptions = { rendererFactory: L.canvas.tile,//渲染方式 canvas interactive: true,//設置true,容許鼠標交互事件 getFeatureId: function (f) { return f.properties.map_num; }, //rendererFactory: L.svg.tile, vectorTileLayerStyles: getSpotVectorStyles("bs_spot_t"),//設置矢量渲染的樣式符號 }; ……
完整demo源碼見小專欄文章尾部:GIS之家leaflet小專欄git
文章尾部提供源代碼下載,對本專欄感興趣的話,能夠關注一波github