jQuery's jquery-1.10.2.min.map spouští 404 (Not Found)

Zobrazují se mi chybové zprávy o tom, že soubor min.map nebyl nalezen:

GET jQuery's jquery-1.10.2.min.map vyvolává 404 (Nenalezeno)


Screenshot

Odkud to pochází?

Řešení

Pokud Chrome DevTools hlásí 404 pro soubor .map (možná jquery-1.10.2.min.map, jquery.min.map nebo jquery-2.0.3.min.map, ale může se to stát s čímkoli), první věc, kterou je třeba vědět, je, že je to požadováno pouze při použití DevTools. Vaši uživatelé na tuto hodnotu 404 nenarazí..

Nyní to můžete opravit nebo zakázat funkci sourcemap.

Oprava: získání souborů

Dále je to snadná oprava. Přejděte na stránku http://jquery.com/download/ a klikněte na odkaz Stáhnout soubor mapy pro vaši verzi, přičemž budete chtít stáhnout i nekomprimovaný soubor.

Mít k dispozici soubor s mapou vám umožní ladit minifikované jQuery prostřednictvím původních zdrojových kódů, což vám ušetří spoustu času a frustrace, pokud neradi řešíte názvy proměnných jako a a c.

Více o mapách zdrojů najdete zde: Úvod do zdrojových map JavaScriptu

Dodge: vypnutí zdrojových map

Místo získávání souborů můžete alternativně v nastavení prozatím zcela zakázat zdrojové mapy JavaScriptu. To je dobrá volba, pokud nikdy neplánujete ladit JavaScript na této stránce. Použijte ikonu ozubeného kolečka v pravém dolním rohu DevTools, čímž otevřete nastavení: zde zadejte popis obrázku]2.

Komentáře (11)

Číslo 404 můžete odstranit odstraněním řádku

//@ sourceMappingURL=jquery-1.10.2.min.map

z horní části souboru jQuery.

Horní část souboru jQuery bude vypadat takto.

/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map
*/

Stačí ji změnit na

/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license */

Účel zdrojové mapy

V podstatě se jedná o způsob, jak namapovat kombinovaný/minifikovaný soubor zpět do nesestaveného stavu. Při sestavování pro produkci se spolu s minimalizací a kombinací souborů JavaScriptu generuje mapa zdrojů, která obsahuje informace o původních souborech. Když se ve vygenerovaném JavaScriptu zeptáte na určité číslo řádku a sloupce, můžete v mapě zdrojů provést vyhledávání, které vrátí původní umístění. Vývojářské nástroje (v současné době noční sestavení WebKitu, Google Chrome nebo Firefox 23+) mohou zdrojovou mapu automaticky analyzovat a vytvořit dojem, že používáte neminifikované a nekombinované soubory. (Více informací o tomto zde)

Komentáře (6)

Pokud vím, prohlížeč Chrome alespoň ve výchozím nastavení mapování zdrojů nevypíná. To znamená, že uživatelé vaší aplikace budou tento požadavek na mapování zdrojů spouštět ve výchozím nastavení.

Mapování zdroje můžete odstranit tak, že ze svého souboru JavaScriptu odstraníte //@ sourceMappingURL=jquery.min.map.

Komentáře (0)