SyntaxError: Using //@ to indicate sourceURL pragmas is deprecated. Use //# instead
Предупреждение JavaScript «Using //@
to indicate sourceURL pragmas is deprecated. Use //#
instead» появляется, когда в JavaScript-коде присутствует устаревший синтаксис карт исходного кода.
Сообщение
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 часто объединяются и минифицируются, чтобы доставлять их с сервера более эффективно. С картами исходного кода, отладчик может сопоставить выполняемый код с исходными файлами.
Спецификация карт исходного кода была изменена из-за конфликта с Internet Explorer, который при обнаружении на странице //@cc_on
включал условную компиляцию в движке IE JScript. Комментарий условной компиляции в IE — малоизвестная функция, но она нарушала работу карт исходного кода jQuery и других библиотек.
Примеры
Устаревший синтаксис
Синтаксис с использованием символа @
устарел.
//@ sourceMappingURL=http://example.com/path/to/your/sourcemap.map
Стандартный синтаксис
Следует использовать символ #
.
//# sourceMappingURL=http://example.com/path/to/your/sourcemap.map
Или можно установить заголовок SourceMap
для нужного JavaScript-файла, чтобы отключить комментирование:
SourceMap: /path/to/file.js.map
Смотрите также
- Use a source map в документации исходного кода Firefox
- Introduction to JavaScript source maps на developer.chrome.com (2012)
SourceMap