この記事は編集レビューを必要としています。ぜひご協力ください。
メッセージ
Warning: SyntaxError: Using //@ to indicate sourceURL pragmas is deprecated. Use //# instead Warning: SyntaxError: Using //@ to indicate sourceMappingURL pragmas is deprecated. Use //# instead
エラータイプ
SyntaxError
の警告が発生します。JavaScript の実行は停止しません。
何がうまくいかなかったのか?
JavaScript ソースに非推奨のソースマップ構文があります。
通常 JavaScript ソースは、サーバからの提供を効率化するために、結合とミニファイが行われます。ソースマップ があることで、デバッガはコードをマッピングでき、オリジナルのソースファイルで実行できます。
IE の JScript エンジンは、//@cc_on
の後でページが見つかると、条件付きコンパイルの有効化とみなします。 この IE での競合のために、ソースマップの仕様の構文が変更されました。IE の @cc_on ステートメント はあまり知られていない機能ですが、jQuery やそのほかのライブラリのソースマップを破壊します。
例
非推奨の構文
"@" 記号を用いた構文は非推奨です。
//@ sourceMappingURL=https://example.com/path/to/your/sourcemap.map
標準の構文
替わりに、"#" 記号を使用します。
//# sourceMappingURL=https://example.com/path/to/your/sourcemap.map
または、すべてのコメントを避けるために、JavaScript ファイルにヘッダを設定できます:
X-SourceMap: /path/to/file.js.map
ブラウザ実装状況
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
新構文 | (有) | 24 (24) | ? | (有) | (有) |
機能 | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
新構文 | ? | ? | 24.0 (24) | ? | ? | ? |