Ошибка Jquery: отсутствует map-файл

Рейтинг: 0Ответов: 2Опубликовано: 15.09.2014

Вроде, на английский не жаловался, а тут полный ступор.
Поясните, пожалуйста, свежий джиквери постоянно ругается на нехватку map-файла.
Насколько я понял, он нужен для более точного определения места ошибки в мешанине обфусцированной библиотеки.
А можно это же самое на пальцах: как работает и действительно ли он является правилом хорошего тона? Надо ли такой свой писать под свои модули?

Ответы

▲ 1

Во первых, map — генерирует обфускатор (например UglifyJS). Во вторых, он нужен только для разработки и загружается исключительно в момент открытия консоли, так что обычным юзерам всё равно.

▲ 1

Если говорить кратко, это файл, в котором содержатся ссылки на оригинальные файлы, из которых был собран один большой файл. Таким образом, можно заставить консоль отображать реальное место ошибки в читаемом, несжатом формате.

Для разработчика совет разместить на сайте этот самый map-файл на этапе отладки (jquery предоставляет уже готовые, UglifyJS, как верно заметил @Etki, такой генерит самостоятельно), а в продакшене удалить, чтобы не генерировать лишний трафик и, хотя бы немного, усложнить жизнь любителям порыться в исходниках.

Если map-файл отсутствует, убрать предупреждение от консоли можно в настройках, сняв галочку "Enable source maps".

Статья на Хабре - Введение в Javascript Source Maps более глубокое изучение предмета.
...И ее Оригинал
Краткое описание от jQuery