แปลง ArcGIS JSON เป็น GeoJSON ในเบราว์เซอร์แท้ๆ
มี 2 วิธีที่คุณสามารถทำได้
1) TERRAFORMER
หมายเหตุ: ใช้ใน node.js และใช้ในเบราว์เซอร์แตกต่างกันดูรายละเอียดที่ลิงค์
2) Esri / arcgis-to-geojson-utils
ใช้ในเบราว์เซอร์ ArcgisToGeojsonUtils เป็น global var reference จุดเริ่มต้นของโมดูลนี้
<script src="https://unpkg.com/@esri/arcgis-to-geojson-utils@1.2.0/dist/arcgis-to-geojson.js"></script>
// parse ArcGIS JSON, convert it to GeoJSON
const geojson = ArcgisToGeojsonUtils.arcgisToGeoJSON({
"x":-122.6764,
"y":45.5165,
"spatialReference": {
"wkid": 4326
}
});
อย่างไรก็ตามหากคุณต้องการมัดด้วยตัวเองเพียงเพื่อการเรียนรู้ให้ทำตามขั้นตอน
a) คุณจำเป็นต้องรวบรวมไฟล์ซอร์สโมดูลทั้งหมดไว้ใน bundle.js เดียว
ติดตั้งrollup.js
npm install --global rollup
จากนั้นไปที่โฟลเดอร์รูท js lib ของคุณค้นหาไฟล์ entry point js ในกรณีนี้คือindex.js
$ rollup index.js --format umd --name "esri_arcgis_to_geojson" --file bundle.js
คุณควรค้นหาไฟล์ใหม่ bundle.js ในรูทไดเร็กทอรีของคุณ
ในไฟล์ html ของเบราว์เซอร์ของคุณให้รวมไฟล์ bundle.js นี้
<script src='.../.../.../bundle.js'>
คุณสามารถใช้งานได้ทันทีโดย
// parse ArcGIS JSON, convert it to GeoJSON
var geojson = esri_arcgis_to_geojson.arcgisToGeoJSON({
"x":-122.6764,
"y":45.5165,
"spatialReference": {
"wkid": 4326
}
});
// take GeoJSON and convert it to ArcGIS JSON
var arcgis = esri_arcgis_to_geojson.geojsonToArcGIS({
"type": "Point",
"coordinates": [45.5165, -122.6764]
});enter code here
จำesri_arcgis_to_geojsonเป็นชื่อที่คุณตั้งชื่อ lib
นี่เป็นชื่อตัวแปรส่วนกลางที่มีอยู่ในเบราว์เซอร์
เคล็ดลับคือกระบวนการมัดเพิ่มฟังก์ชั่นการใช้งานทันทีเช่น (ฟังก์ชั่น xx {}) นี่คือส่วนบนจาก bundle.js
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ?
factory(exports) :
typeof define === 'function' && define.amd ? define(['exports'],
factory) :
(factory((global.arcgis_to_geojson = {})));
}(this, (function (exports) { 'use strict';
***ORIGINAL SOURCE CODE OF JS MODULE***
})));
ArcGIS เพื่อ GeoJSON-utils