摘要:簡體中文特性如何使用安裝使用安裝,你也可以在頁面中引入構(gòu)建后的文件。順便校正下地圖窗口接下來我們要取消事件監(jiān)聽點擊此處查看更多示例
使用同一套代碼創(chuàng)建你的 web 地圖應(yīng)用。 ? https://github.com/XingzheFE/...
English | 簡體中文
特性
Layers
Marker
Polyline
Popup
Map Controls
zoom
fitView
panTo
Evented
Utils
getBound
locate
coordinate translate
如何使用 安裝使用 npm 安裝 plain-js,你也可以在頁面中引入構(gòu)建后的 js 文件。
$ npm install plain-js --save創(chuàng)建地圖
創(chuàng)建地圖的方式很簡單,最直接的方式是在 html 文件中引入地圖庫的腳本文件以及 plain.min.js
// 首先初始化一個 plain 對象 let plain = new Plain(); // 設(shè)置需要使用的坐標(biāo)系,如果不設(shè)置的話所有地圖使用默認(rèn)的坐標(biāo)系, // Google 和 高德地圖在大陸使用 GCJ02,百度地圖使用 BD09, // 為了方便開發(fā)建議設(shè)置為 GCJ02 plain.setCoordType("GCJ02"); // 告訴 plain 你需要使用 Google 地圖, // 可選的參數(shù)有 Google Map "GMAP", 高德地圖 "AMAP", 百度地圖 "BMAP" plain.use("GMAP"); // 創(chuàng)建一個 Google 地圖實例 let map = plain.Map({ container: "#map", // DivElement center: [39.908012, 116.399348], zoom: 15 });
或者使用回調(diào)的方式創(chuàng)建
let plain = new Plain().use("GMAP"); let key = "[your access key]"; plain.loadMap(key, () => { let map = window.map = plain.Map({ container: document.getElementById("map"), center: [39.910, 116.404], zoom: 15 }); }, err => { // TODO: };添加 Marker
let marker = plain.Marker([39.910, 116.404]); map.addLayer(marker); // 也可傳入一個數(shù)組
如果想讓 Marker 變得不一樣也是可以的,在 Marker 方法中傳入第二個參數(shù):
// 自定義 icon let icon = plain.Icon({ url: "https://unpkg.com/leaflet@1.0.3/dist/images/marker-icon.png", size: [25, 40], anchor: [12.5, 40] }); // Marker configure option let markerOpt = { icon: icon, draggable: true }; let marker2 = plain.Marker([39.910, 116.404], markerOpt); map.addLayer(marker2); map.removeLayer(marker); // 可以從地圖中移除之前創(chuàng)建的標(biāo)記添加 Polyline
向地圖中添加折線之前需要先定義一個二維數(shù)組,注意:我們默認(rèn)傳入的坐標(biāo)格式是 [lat: Number, lng: Number]
let path = [ [39.910, 116.404], [39.71, 116.5], [39.909, 117], [39.710, 118] ]; let polyline = plain.Polyline(path, { color: "#f00", weight: 2, opacity: 0.8 }); map.addLayer(polyline);自定義覆蓋物及 Popup
let layer = plain.Layer() .setContent("text or Element") .setLatLng([31, 116]) .mount(map) .show() .hide() .unmount(); let popup = plain.Popup({closeBtn: false}) .setContent(document.createElement("button")) .setLatLng([31, 116]) .mount(map) .show() .hide() .unmount();事件
到目前為止,我們已經(jīng)可以創(chuàng)建一個展示基本信息的地圖了,那么接下來就給地圖綁定下點擊事件的響應(yīng)方法。
plain 提供了一個工具方法格式化傳入的事件對象,返回的值格式如下
class Event { e: any; // 原始的事件對象 p: F.LatLng; // 坐標(biāo) [lat: number, lng: number] target: F.Layer; // 觸發(fā)事件的對象 type: string; // 事件名 }
其中坐標(biāo) p 為最初 plain.setCoordType("GCJ02"); 設(shè)置的格式,如果沒有設(shè)置,那么返回的值和原生地圖庫一致。
let listener = map.on("rightclick", function (e) { console.log(plain.Util.formatEvent.call(this, e)); // 順便校正下地圖窗口 map.fitView(path); });
接下來我們要取消事件監(jiān)聽:
map.off(listener);
點擊此處查看更多示例License
plain is MIT licensed.
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/104900.html
摘要:你就可以在目錄下用或者開發(fā)應(yīng)用代碼了設(shè)計原理結(jié)合了高德地圖多個功能,比如定位,地圖縮放,繪制折現(xiàn),進(jìn)行點的標(biāo)記等常用功能。文件源代碼打包運行開發(fā)完畢后,我們可以運行命令,讓它安裝到我們的測試手機上。 Weex正如它的目標(biāo), 一套構(gòu)建高性能、可擴展的原生應(yīng)用的跨平臺開發(fā)方案 Weex 給大家?guī)淼臒o疑是客戶端開發(fā)效率的提升,我們可以通過一套代碼,實現(xiàn)web,android, iOS的三個...
摘要:三態(tài)分別是就緒運行阻塞進(jìn)程的五態(tài)模型在三態(tài)的基礎(chǔ)上發(fā)展而來新建態(tài)運行態(tài)終止態(tài)就緒態(tài)等待態(tài)線程稱之為輕量級的進(jìn)程,程序執(zhí)行流的最小單元。一個進(jìn)程下有多個線程來完成不同的工作稱之為多線程。 web資源防盜鏈 盜鏈?zhǔn)鞘裁矗?為什么要防? 在自己頁面上顯示一些不是自己服務(wù)器的資源(圖片、音頻、視頻、css、js等)由于別人盜鏈你的資源會加重你的服務(wù)器負(fù)擔(dān),所以我們需要防止可能會影響統(tǒng)計 防盜鏈...
摘要:讓我們看看都做了哪些工作可視化分析增強數(shù)據(jù)可操作性測試平臺的表格和置信區(qū)間可視化可視化分析主要都是由抽象數(shù)據(jù)可視化組成的。大多數(shù)有效的可視化分析在這種情況下都是關(guān)于報告儀表盤實時分析的圖標(biāo)和網(wǎng)絡(luò)圖。 showImg(https://segmentfault.com/img/remote/1460000006771644); 概述 在2015年初,我們在Uber規(guī)劃了一個官方的數(shù)據(jù)科學(xué)團...
摘要:讓我們看看都做了哪些工作可視化分析增強數(shù)據(jù)可操作性測試平臺的表格和置信區(qū)間可視化可視化分析主要都是由抽象數(shù)據(jù)可視化組成的。大多數(shù)有效的可視化分析在這種情況下都是關(guān)于報告儀表盤實時分析的圖標(biāo)和網(wǎng)絡(luò)圖。 showImg(https://segmentfault.com/img/remote/1460000006771644); 概述 在2015年初,我們在Uber規(guī)劃了一個官方的數(shù)據(jù)科學(xué)團...
摘要:應(yīng)用需要正確并合適響應(yīng)各種網(wǎng)絡(luò)請求用戶操作計時事件和各種延時動作。好了,我們的新流程圖畫出來了提示城市名稱查找不是很復(fù)雜,谷歌地圖為此提供了非常簡單的。形象點表示就是,函數(shù)是一等公民。 By Hubert Zub | Oct 3, 2018 原文 當(dāng)你將關(guān)注點從樣式,美學(xué)和網(wǎng)格系統(tǒng)轉(zhuǎn)移到邏輯,框架和編寫JavaScript代碼時。一切都開始了,你會發(fā)現(xiàn)你處于你的web開發(fā)歷程中最激動人...
閱讀 1072·2021-11-25 09:43
閱讀 696·2021-11-22 14:45
閱讀 3816·2021-09-30 09:48
閱讀 1061·2021-08-31 09:41
閱讀 1970·2019-08-30 13:52
閱讀 1976·2019-08-30 11:24
閱讀 1341·2019-08-30 11:07
閱讀 950·2019-08-29 12:15