开发ArcGIS Online应用程序模板之前,需要了解怎么使用ArcGIS API for JavaScript。
在ArcGIS Online当中如何构架自己的应用程序模板,我们得先要了解ArcGIS Online如何解析这个web地图的。
做过程序开发的,都清楚,每一个item都对应着数据库的一个id值。而ArcGIS Online这个Id名称是webmap。
var queryString = function(key) { return (document.location.search.match(new RegExp("(?:^\\?|&)"+key+"=(.*?)(?=&|$)"))||['',null])[1]; }
function init() { var WEBMAP_ID = queryString("webmap")||"ceac2dfaea0449119724e8b78e99013a";//默认值 }其实ArcGIS API for JavaScript有这么一个类似的函数。
function init() { var urlObject = esri.urlToObject(document.location.href); if(urlObject.query && typeof (urlObject.query.webmap) != "undefined") { var WEBMAP_ID = urlObject.query.webmap; } else { var WEBMAP_ID = "ceac2dfaea0449119724e8b78e99013a" } }
function init() { var urlObject = esri.urlToObject(document.location.href); if(urlObject.query && typeof (urlObject.query.webmap) != "undefined") { var WEBMAP_ID = urlObject.query.webmap; } else { var WEBMAP_ID = "ceac2dfaea0449119724e8b78e99013a" } var mapDeferred = esri.arcgis.utils.createMap(WEBMAP_ID, "map", { mapOptions : { slider : true }, ignorePopups : false, bingMapsKey : "" }); mapDeferred.addCallback(function(response) { console.log(response); _map = response.map; dojo.connect(dijit.byId('map'), 'resize', _map,_map.resize); }) }