leaflet-webpack 入門開發系列一初探篇(附源碼下載)

前言

leaflet-webpack 入門開發系列環境知識點了解:css

我以前有計劃寫一系列關於 leaflet 入門開發文章,只是一直沒什麼時間來整理,最近恰好單位有個 WebGIS 項目是用 leaflet 結合 webpack 來管理使用的,因此,開始了本篇文章 leaflet-webpack 入門開發系列一初探篇,對於 webpack 這個管理工具平臺,我也是學習階段,跟你們一塊兒學習交流,寫的很差之處,望見諒。html

環境搭建

  • 安裝 node.js,筆者版本爲:10.15.3
  • 下載安裝 vscode
  • demo 項目工程文件目錄以及關鍵代碼講解

dist webpack 打包編譯後的文件夾
dist/index.html 地圖主頁
src/index.js 地圖初始化代碼
package.json 記錄了項目的配置信息,包括名稱、版本、許可證等元數據,也會記錄所需的各類模塊,包括 執行依賴,和開發依賴
webpack.config.js webpack 的配置文件前端

  • index.html
<html>
<head>
<title>Leaflet入門開發系列Demo</title>
</head>
<body>
<div id="map" style="width: 100%; height: 100%;"></div>
<script src="bundle.js"></script>
</body>
</html>
  • index.js
import L from 'leaflet';
import 'leaflet/dist/leaflet.css';
/* This code is needed to properly load the images in the Leaflet CSS */
delete L.Icon.Default.prototype._getIconUrl;
L.Icon.Default.mergeOptions({
iconRetinaUrl: require('leaflet/dist/images/marker-icon-2x.png'),
iconUrl: require('leaflet/dist/images/marker-icon.png'),
shadowUrl: require('leaflet/dist/images/marker-shadow.png'),
});
 
//const map = L.map('map');
const map = L.map("map", {
attributionControl: false
});
const defaultCenter = [23.1441, 113.3693];
const defaultZoom = 15;
const basemap = L.tileLayer('https://server.arcgisonline.com/arcgis/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}');
const marker = L.marker(defaultCenter);
map.setView(defaultCenter, defaultZoom);
basemap.addTo(map);
marker.addTo(map);
//監聽地圖點擊事件
map.on("click",(evt)=>{
console.log(evt);
})
  • 在 vscode 新建終端,輸入 npm install 或者 npm i, 安裝環境須要的依賴包,若無報錯信息,則進行下一步
  • npm run build,打包編譯web項目
  • npm start,node 啓動 web 項目打包到瀏覽器運行看效果
  • 若是正常出現該頁面,則運行成功

完整demo源碼見小專欄文章尾部GIS之家小專欄node

文章尾部提供源代碼下載,對本專欄感興趣的話,能夠關注一波webpack

相關文章
相關標籤/搜索