Đối với Arcascript SDK javascript phiên bản 3.x, bạn có thể sử dụng lớp esri / basemaps để khai báo và đăng ký bản đồ nền tùy chỉnh và sử dụng với bản đồ của mình: https://developers.arcgis.com/javascript/3/jsapi/esri.basemaps-amd.html
Khai báo và đăng ký bản đồ cơ sở tùy chỉnh:
Basemaps.mybasemap = {
title: 'My custom basemap',
thumbnailUrl: 'https://js.arcgis.com/3.22/esri/images/basemap/satellite.jpg',
//itemId: 'ulas',
baseMapLayers: [
{ url: "https://services.arcgisonline.com/ArcGIS/rest/services/Specialty/DeLorme_World_Base_Map/MapServer" }
]
};
Sử dụng sơ đồ cơ sở tùy chỉnh trong trình tạo bản đồ:
var map = new Map("mapDiv", {
basemap: "mybasemap",
center: [-122.69, 45.52],
zoom: 3
});
Hoặc bạn có thể áp dụng sơ đồ cơ sở tùy chỉnh của mình cho bản đồ hiện có:
map.setBasemap("mybasemap");
Ví dụ mã đầy đủ: https://codepen.io/digz6666/pen/wPwPbW
Đối với phiên bản SDK javascript SDK 4.x, bạn có thể sử dụng esri / Basemap.
Khai báo lớp bản đồ cơ sở và bản đồ cơ sở:
var baseLayer = new MapImageLayer({
url: "https://services.arcgisonline.com/ArcGIS/rest/services/Specialty/DeLorme_World_Base_Map/MapServer"
});
var myBasemap = this.esri.basemap({
baseLayers: [baseLayer],
title: 'My custom basemap',
id: 'my_custom_basemap'
});
Áp dụng sơ đồ cơ sở cho đối tượng bản đồ hiện có:
map.basemap = myBasemap;