我试图使用ESRI的ArgGis的JavaScript API ,这是由加载道场 ,使用dojo.require
。 我有一个现有的模块化AMD / requirejs打字稿,我需要这个代码集成到应用程序。 在我最初的TS文件的顶部,我输入几个模块:
import tracer = module('../classes/trace');
import pubsub = module('../classes/pubsub');
import masker = module('../classes/masker');
// etc.
这是工作的罚款,但现在我已经加入ArcGIS的代码,而不是我的应用程序内解决相对路径,require.js回升从ESRI的网站的baseUrl,并尝试加载:
http://serverapi.arcgisonline.com/jsapi/arcgis/3.3/js/esri/classes/trace.js
// etc.
造成404个响应和脚本错误的字符串。
我怎样才能解决这个问题?
我试着加载,加载模块的头文件之前设置在我的HTML文件的头部requirejs的baseUrl:
<script src="http://serverapi.arcgisonline.com/jsapi/arcgis/3.3"></script>
<script type="text/javascript" src="/content/client/libs/require.js"></script> <!-- data-main="/content/client/hop/hop.app" -->
<script type="text/ecmascript">
require.config({
baseUrl: "/Content/client/hop/"
});
</script>
<script src="~/Content/client/hop/hop.app.js"></script>
但这种失败,投掷要求没有方法配置一个例外。
(注:如果我扭转在HTML文档的头部顺序,以便在ArcGIS API装载序列中的最后出现,然后我得到了相反的问题 - 我的本地文件都做工精细,但Dojo和映射API失败,因为他们正在寻找相对于我的网站路径时,他们应该在argis服务器上搜索)。