0

我在 Android 设备上使用 requireJs 加载 ESRI 时遇到问题。一切都可以在其他平台(黑莓、iOs、WP8)上运行,但我无法在 android 平台上加载地图。

这是我用来加载 ESRI 文件的代码:

require([ "esri/map",
                  "esri/layers/ArcGISDynamicMapServiceLayer",   
                  "esri/layers/FeatureLayer",
                  "esri/geometry/Point", 
                  "esri/SpatialReference", 
                  "esri/symbols/PictureMarkerSymbol",
                  "esri/graphic",
                  "esri/layers/GraphicsLayer",
                  "esri/lang",
                  "esri/geometry/Extent",
                  "esri/dijit/InfoWindowLite",
                  "dojo/domReady!"], 

                  function(Map,
                          ArcGISDynamicMapServiceLayer, 
                          FeatureLayer, 
                          Point, 
                          SpatialReference, 
                          PictureMarkerSymbol, 
                          Graphic, 
                          GraphicsLayer, 
                          esriLang, 
                          Extent, 
                          InfoWindowLite) {
        var MyMap = new esri.Map("mapContainer",{
                 basemap: "topo",
                 center: [ 10, 36], // long, lat
                 logo : false,
                 zoom: 11
               });

                 });

这是我得到的日志:

Uncaught Error: Load timeout for modules: dojo/domReady!_unnormalized3,dojo/i18n!esri/nls/jsapi_unnormalized4,dojo/has!extend-esri?esri/layers/agscommon_unnormalized5,dojo/has!dom-addeventlistener?:./aspect_unnormalized6,dojo/i18n!dojo/cldr/nls/gregorian_unnormalized7,dojo/has!extend-esri?esri/tasks/QueryTask_unnormalized8,dojo/has!extend-esri?esri/tasks/RelationshipQuery_unnormalized9,dojo/has!extend-esri?esri/tasks/StatisticDefinition_unnormalized10,dojox/gfx/renderer!_unnormalized11,dojo/i18n!dojo/cldr/nls/number_unnormalized12,dojo/i18n!esri/nls/jsapi_unnormalized13,dojo/selector/_loader!default_unnormalized14,dojo/has!host-browser?dom-addeventlistener?:../on:_unnormalized15

http://requirejs.org/docs/errors.html#timeout:1748

有人知道这个问题吗?

4

2 回答 2

0

实际上我使用的是 ESRI 3.7 版,我将其更改为 ESRI 3.9 版,现在它就像一个魅力。

所以这是与 has.js 模块相关的版本问题。但是,如果您在整个requireJs中加载模块超时时遇到此类问题,则可以将此属性添加到require.config

urlArgs: "bust=" + (new Date()).getTime(),

它有助于解决问题。

于 2014-09-11T11:21:39.867 回答
0

也许您必须在表单中的 InfoWindowLite 之后在您的函数中添加一个模块名称function(Map,... InfoWindowLite, ready) {...

于 2014-09-11T08:15:34.530 回答