私が作成していますIonic
使用してアプリをes6 modules
、TypeScript
およびSystemJS
モジュールローダとして。これは私のセットアップです:
tsconfig.json:
{
"compilerOptions": {
...
"target": "es5",
"module": "system",
...
}
}
index.html:
<script src="lib/system.js"></script>
<script src="systemjs.config.js"></script>
<script>System.import('js/app.js')</script>
スクリプトの例(TypeScript):
import {IConfig} from "./app-config";
export class ConfigLoader {
...
}
Chromeですべてがうまくいきます。ただし、SafariのWebインスペクターを使用してデバッグする場合、WebインスペクターはHTMLから直接読み込まれたスクリプト(スクリプトタグを介して)のみを表示し、XHR(私の場合はSystemJS)によって読み込まれたスクリプトを表示しないため、スクリプトにブレークポイントを配置できません。 。つまり、自分のスクリプトをデバッグすることはできません。もちろん、これは受け入れられません。
以前のようにSystemJSを使用してこれを回避しようとしましたが、次のようにスクリプトタグをhtmlに配置しました。
<script src="lib/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="js/app-config.js"></script>
... other app scripts
<script>System.import('js/app.js')</script>
ただし、SystemJSはこれについて満足していないようなので、これは機能しません。
無効なSystem.register呼び出し。匿名のSystem.register呼び出しは、SystemJS.importによって読み込まれたモジュールでのみ実行でき、スクリプトタグ経由では実行できません。
SystemJSをどのように使用し、同時にSafariでデバッグすることができますか?「各スクリプトにデバッガーステートメントを置く」よりも少し洗練された解決策を探しています...
debugger
JSキーワードを使用