DojoによってロードされるEsriArgGisJavaScript APIを、を使用して使用しようとしています。このコードを統合する必要がある既存のモジュラーAMD/requirejsTypescriptアプリケーションがあります。最初のTSファイルの先頭に、いくつかのモジュールをインポートします。dojo.require
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ファイルの先頭にrequirejsbaseUrlを設定してみました。
<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>
しかし、これは失敗し、requireにメソッド構成がない例外をスローします。
(注:rcgis apiがロードシーケンスの最後になるように、htmlドキュメントの先頭の順序を逆にすると、逆の問題が発生します。ローカルファイルはすべて正常に機能しますが、dojoとマッピングapiは検索しているため失敗します。 argisサーバーで検索する必要がある場合の私のサイトに関連するパス)。