最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue結合leaflet實現鷹眼圖

 更新時間:2023年06月26日 15:10:09   作者:努力搬磚的giser  
本文主要介紹了vue結合leaflet實現鷹眼圖,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

本文介紹了一個Web端使用Leaflet開發(fā)庫顯示鷹眼圖的方法 (底圖來源:天地圖),該插件可設置鷹眼小地圖的大小、位置、收縮展示狀態(tài)。

開發(fā)環(huán)境

Vue開發(fā)庫:3.2.37 & Leaflet開發(fā)庫:1.9.3

Leaflet插件:leaflet-minimap

使用教程

安裝依賴庫

方法一: 通過npm安裝依賴

npm i leaflet-minimap

方法二: 通過github倉庫下載,引入項目中(推薦)

leaflet-minimap官網 https://github.com/Norkart/Leaflet-MiniMap

克隆leaflet-minimap倉庫,下載完畢后,進入Leaflet-MiniMap文件夾,將dist目錄下的文件夾引入本地項目中。為什么推薦該方式引入呢?是因為該插件在進行最小化和展示時,鼠標懸浮 hover效果會有個英文提示出現,本地引入可以將英文提示語修改為中文,而不用去修改node_modules中的文件。

git clone https://github.com/Norkart/Leaflet-MiniMap

使用簡介

// 定義一個底圖(注意:小地圖的layer不能和地圖上共用一個,否則無法加載)
const minilayer = L.tileLayer(`https://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetWarm/MapServer/tile/{z}/{y}/{x}`)
// 使用小地圖,添加到地圖上
const miniMap = new L.Control.MiniMap(minilayer, {
    // 鷹眼圖配置項,參數非必須,可以忽略使用默認配置
    width: 300, // 鷹眼圖寬度
    height: 200, // 鷹眼圖高度
    toggleDisplay: true, // 是否顯示最小化按鈕
    minimized: false, // 是否最小化位置開始
}).addTo(map);
// 改變鷹眼圖圖層源
// miniMap.changeLayer('新的layer');
// 移除鷹眼小地圖
// map.removeControl(miniMap);

以下是核心的參數配置項,截圖于gitHub倉庫(更新時間:2023年5月30日)

詳細源碼(Vue3)

<template>
  <div class="app-contain">
    <!-- leaflet 地圖容器 -->
    <div id="myMap"></div>
  </div>
</template>
<script setup>
// 引入樣式
import {onMounted} from 'vue'
// 引入leaflet
import L from 'leaflet';
import 'leaflet/dist/leaflet.css'
// 小地圖
import "./store/Control.MiniMap.min.js";
import "./store/Control.MiniMap.min.css";
// 天地圖TK
let tdtKey = 'YOURS_TK'
const initMap = () => {
  // 影像地圖
  const tiandituMap = L.tileLayer(`http://t0.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=${tdtKey}`)
  // 注記
  const tiandituText = L.tileLayer(`http://t0.tianditu.gov.cn/cia_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cia&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=${tdtKey}`)
  const layers = L.layerGroup([tiandituMap, tiandituText])
  let map = L.map('myMap', {  //需綁定地圖容器div的id
    center: [39.56, 116.20], //初始地圖中心
    zoom: 10, //初始縮放等級
    maxZoom: 18, //最大縮放等級
    minZoom: 0, //最小縮放等級
    zoomControl: true, //縮放組件
    attributionControl: false, //去掉右下角logol
    scrollWheelZoom: true, //默認開啟鼠標滾輪縮放
    // 限制顯示地理范圍
    maxBounds: L.latLngBounds(L.latLng(-90, -180), L.latLng(90, 180)),
    layers: [layers] // 圖層
  })
  /** 添加小地圖 */
  // 定義一個底圖(注意:小地圖的layer不能和地圖上共用一個,否則無法加載)
  const minilayer = L.tileLayer(`https://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetWarm/MapServer/tile/{z}/{y}/{x}`)
  // 使用小地圖,添加到地圖上
  const miniMap = new L.Control.MiniMap(minilayer, {
    // 鷹眼圖配置項,參數非必須,可以忽略使用默認配置
    width: 300, // 鷹眼圖寬度
    height: 200, // 鷹眼圖高度
    toggleDisplay: true, // 是否顯示最小化按鈕
    minimized: false, // 是否最小化位置開始
  }).addTo(map);
  // miniMap.changeLayer('新的layer');
  // 移除小地圖
  // map.removeControl(miniMap);
}
onMounted(() => {
  initMap()
})
</script>
<style scoped>
#myMap {
  width: 86vw;
  height: 90vh;
}
</style>

 到此這篇關于vue結合leaflet實現鷹眼圖的文章就介紹到這了,更多相關vue leaflet鷹眼圖內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • vue實現實時上傳文件進度條

    vue實現實時上傳文件進度條

    這篇文章主要為大家詳細介紹了vue實現實時上傳文件進度條,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue-axios同時請求多個接口 等所有接口全部加載完成再處理操作

    vue-axios同時請求多個接口 等所有接口全部加載完成再處理操作

    這篇文章主要介紹了vue-axios同時請求多個接口 等所有接口全部加載完成再處理操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Vue使用CDN引用項目組件,減少項目體積的步驟

    Vue使用CDN引用項目組件,減少項目體積的步驟

    這篇文章主要介紹了Vue使用CDN引用項目組件,減少項目體積的步驟,幫助大家提高項目加載速度,感興趣的朋友可以了解下
    2020-10-10
  • Vue實現大屏頁面的屏幕自適應

    Vue實現大屏頁面的屏幕自適應

    這篇文章主要為大家詳細介紹了Vue實現大屏頁面的屏幕自適應,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • Vue應用中使用xlsx庫實現Excel文件導出的詳細步驟

    Vue應用中使用xlsx庫實現Excel文件導出的詳細步驟

    本文詳細介紹了如何在Vue應用中使用xlsx庫來導出Excel文件,包括安裝xlsx庫、準備數據、創(chuàng)建導出方法、觸發(fā)導出操作和自定義Excel文件等步驟,xlsx庫提供了強大的API和靈活的自定義選項,使得處理Excel文件變得簡單而高效
    2024-10-10
  • vue登錄以及權限驗證相關的實現

    vue登錄以及權限驗證相關的實現

    這篇文章主要介紹了vue登錄以及權限驗證相關的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • npm install卡在“sill idealTree buildDeps“問題的兩種解決方法

    npm install卡在“sill idealTree buildDeps“問題的兩種解

    本文主要介紹了npm install卡在“sill idealTree buildDeps“問題的兩種解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-03-03
  • vue生成隨機驗證碼的示例代碼

    vue生成隨機驗證碼的示例代碼

    本篇文章主要介紹了vue生成隨機驗證碼的示例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧‘
    2017-09-09
  • vue實現拖拽小圖標

    vue實現拖拽小圖標

    這篇文章主要為大家詳細介紹了vue實現拖拽小圖標,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue3封裝echarts組件最佳形式詳解

    vue3封裝echarts組件最佳形式詳解

    這篇文章主要為大家介紹了vue3封裝echarts組件最佳形式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11

最新評論

巩义市| 蒙城县| 定日县| 平远县| 锡林郭勒盟| 昭平县| 天水市| 喀喇| 潞西市| 砚山县| 缙云县| 镇雄县| 青田县| 林芝县| 沭阳县| 若尔盖县| 平昌县| 清水河县| 平湖市| 宝丰县| 镇原县| 吉安市| 安阳县| 隆回县| 类乌齐县| 淮安市| 枣阳市| 阿瓦提县| 石阡县| 宜州市| 公安县| 广南县| 云梦县| 金华市| 突泉县| 会昌县| 嘉荫县| 石林| 嘉禾县| 广汉市| 武汉市|