arcgis jsapi 4.10初體驗
阿新 • • 發佈:2019-01-12
沒想到第1000篇文章是有關GIS的。雞毛蒜皮,一點也不夠大氣。
體驗就是坑。
現在專案前端用到的arcgis jsapi指明要用4.10了。從3.19直接跳躍到4.10。結果就是各種不習慣,各種坑。我去,這變化也忒大了吧。雖然是同一家公司,但一定是另一撥程式設計師搞的,各種看前任不順眼,認為3點幾是垃圾,於是重新設計,重新開發,結果就是另一坨偉大的垃圾產生了。
記錄一下各種變化/坑。
1、載入底圖,並去掉arcgis logo或標識
let baselayer = new TileLayer({
url: 底圖地址,
});
let basemap = new BaseMap ({
baseLayers: baselayer,
title: 標題,
thumbnailUrl: 縮圖地址,
});
let map = new Map({
basemap: basemap,
});
let view = new MapView({
container: "map",
map: map,
extent: new Extent({
"xmin": 100,
"ymin": 20,
"xmax": 120,
"ymax": 40,
"spatialReference": { "wkid": 4326 }
} ),
});
view.ui._removeComponents(["attribution"]);//去掉arcgis的logo或標識
一大坨的程式碼,只為了載入一張底圖。就問你爽不爽。
2、各種零碎的小工具
//放大和縮小按鈕
//預設是在左上角(老美多左撇子?)
view.ui.move("zoom", "top-right");//move?我在懷疑我的智商。原先只作為一個屬性設定
//home button
var homeWidget = new Home({
view: view
});
view.ui.add(homeWidget, "top-right");
//底圖切換
let baselayer = new TileLayer({
url: 底圖地址,
});
let basemap = new BaseMap({
baseLayers: baselayer,
title: 標題,
thumbnailUrl: 縮圖地址,
});
var toggle = new BasemapToggle({
view: view,
nextBasemap: basemap,
});
view.ui.add(toggle, "top-right");
不過呢,大家都用到右上角,arcgis會將它們從上到下依次排列好。
3、PopupTemplate展示所有欄位
new PopupTemplate({
"title": "詳細資訊",
"content": "{*}",
})