ArcGIS JavaScript API離線部署後服務切片錯位及放大縮小按鈕不可用等問題的解決方法
阿新 • • 發佈:2019-02-06
1.環境
本文講述的是講ArcGIS JS API離線部署到本地,部署方法可參考本博另一篇文章,也可網上搜索大量的參考案例。
本文的主要環境因素是:ArcGIS Server 10.1,Windows Server 2008,ArcGIS API for JavaScript 3.6。
2.現象
首先是介面不正常,放大和縮小按鈕變成簡單的“+”和“-”,而且點選後不響應;
其次是服務切片載入不正確,出現錯位,缺失等現象,總之就是亂七八糟,完全不忍直視啊!
如圖:
3.原因
根據和部署正確且效果正常的對比,檢視原始碼有如下發現:
注意兩個紅框內容的不同之處。
說明:從ArcGIS API for JavaScript 3.3開始,為了減少開發人員工作量,對CSS進行了重組,通過esri.css檔案來統一管理樣式。
4.解決
本案例使用的是3.6版本的API,所以需要將CSS引用設定為對esri.css的引用。
開啟rest-config.properties檔案(在ArcGIS Server安裝目錄下framework\runtime\tomcat\webapps\arcgis#rest\WEB-INF\classes\resources),找到如下引數設定:
修改其中的css設定,修改後如下圖(將之前的css設定註釋掉了,也可以直接刪除該行):
重啟ArcGIS Server,稍等片刻再檢視,一切正常。
5.總結
出問題主要原因在於不同版本的ArcGIS JS API會有一些不同,部署方法大同小異(10.2之後變化較大),主要是注意一些配置引數需要根據版本不同設定。
本問題的解決過程中得到了JS高手大米同學的鼎力幫助,再次隆重感謝!