2013-06-05 17 views
6

Mapy źródłowe są bardzo przydatne do debugowania zminimalizowanych skryptów lub przetłumaczonych języków (np. CoffeeScript), ale przeglądarka oferuje bardzo mało danych wyjściowych, aby rozwiązać problem, dlaczego mapowanie nie działa. Czy ktoś ma listę kontrolną, której można użyć, aby znaleźć miejsce, w którym mapowanie jest nieprawidłowe. W tej chwili mam instalację działającą na moim lokalnym środowisku programistycznym, ale przy próbie wdrożenia go na naszym serwerze testowym "to nie działa".Rozwiązywanie problemów z mapami źródłowymi przeglądarki

Czego zostały zweryfikowane są takie same między mój lokalny i środowiska pomostowego:

  1. mapy źródłowe są włączony inspektora ustawień
  2. Plik package.min.js serwowane jest od/js
  3. w package.min.js zawiera tę samą //@ sourceMappingURL=package.min.js.map linię
  4. minified źródło + źródło mapa generowana przez zeszpecić-JS2
  5. oryginalne pliki są dostępne w/js

Jedna różnica polega na tym, że rozmiar wygenerowanej mapy źródłowej jest nieco inny, a plik w atrybucie źródłowym hash sourcemap ma nieco inną kolejność. Ale mapa źródłowa jest dość duża, więc nietrudno jest zweryfikować, czy rzeczywiście nie różni się ona w znaczący sposób.

+0

Możesz spróbować użyć http://murzwin.com/base64vlq.html - może generować czytelne dla człowieka dane wyjściowe z mapowań Base64-VLQ. –

+0

Mam dokładnie ten sam problem. Niektóre moje żołędzie nie są honorowane z jakiegoś powodu, ale nie mam pojęcia, dlaczego ... – LordOfThePigs

Odpowiedz

1

Mapy źródłowe (i oryginalne pliki źródłowe) są pobierane przez HTTP. Sprawdź dzienniki serwera, aby zobaczyć, czego rzeczywiście wymaga przeglądarka.

Również: //@is going to be replaced z //#.

+2

Chcę podkreślić, że ta zmiana jest w przyszłości. Wersja uglify, która jest obecnie używana przez [zadanie gruntowe] (https://npmjs.org/package/grunt-contrib-uglify), wyprowadza nowy format '// #', ale aktualna wersja Chrome (27.0 .1453.116) wydaje się obsługiwać tylko stary format '// @ '. Doprowadzało mnie to do szału, dopóki się nie zorientowałem. –

Powiązane problemy