2013-03-19 8 views
13

Jestem na Chrome Dev 27, a w ustawieniach Dev Tools zaznaczone Wyłącz pamięć podręczną. Po ponownym wczytaniu strony przeglądarka poprawnie ładuje wszystkie zasoby używane na stronie mapy, w tym pliki .js. Jednak nie powoduje automatycznego przeładowania odpowiadającego mu source maps.map. Monitorowanie ruchu HTTP między moją aplikacją Chrome, po kolejnym wczytaniu strony, nie widzę żadnych żądań z Chrome dla plików .map. Jak mogę zmusić Chrome do ponownego załadowania map źródłowych?Jak sprawić, by Chrome ponownie ładował mapy źródłowe?

Problem z Chrome nie przeładowywania pliku .map jest to, że również nie będzie przeładować plik z którego .js został wygenerowany, co w moim przypadku dzieje się plik coffeescript (.coffee), co oznacza, że ​​podczas debugowania, w zakładce Źródła Patrzę na starej wersji pliku .coffee, nawet jeśli nowy kod (od .js) jest uruchomiony.

Odpowiedz

21

Tego samego dnia miałem już ten sam problem. Oczekiwano, że rozwiąże to dla mnie zakładkę plików kawy pod źródłami, przejdź do karty sieciowej, kliknij prawym przyciskiem myszy i wybierz "Wyczyść pamięć podręczną przeglądarki".

Naprawiono to dla mnie.

Powiedział, odwzorowane pliki nie zawsze dostać „zatrzymany” w pamięci podręcznej dla mnie ... tylko czasami, a kiedy nie, jasne cache trik rozwiązuje go.

+0

To działało również dla mnie. Dzięki @Philip – Zander

+0

Działa również wtedy, gdy pliki TypeScript (* .ts) nie odświeżają się w Chrome. Dzięki za to. – sboisse

+2

Tak, wydaje się, że utknął ...2 lata później ten sam problem z TypeScript i VisualStudio .... To powinna być odpowiedź, ponieważ pomaga rozwiązać problem z blokowaniem pamięci podręcznej. – ppumkin

0

prostu miał ten sam problem i znaleźć kilka dodatkowych rozwiązań:

Według tego commit i tym bug report dla chromu, problem został rozwiązany i nie powinna wpływać na jeden następny buduje.

Trochę prostsze rozwiązanie tego problemu niż wyczyszczenie całego Browser Cache:

Otwórz mapę źródło w karcie przeglądarki i zrobić twardy reload (w zależności od systemu operacyjnego, spróbuj CTRL + F5) . Spowoduje to odświeżenie pliku i zachowanie pamięci podręcznej przeglądarki.

Alternatywny sposób i być może jest to dobra praktyka, aby włamać generowanie map source dodając parametr jak ?build=12345. Sprawdź w swoim narzędziu do budowania, jak manipulować nazwą pliku mapy źródłowej.

Jeśli masz dostęp do konfiguracji serwera lub .htaccess, możesz ustawić nagłówek Cache-Control: no-cache dla rozszerzenia mapy źródłowej, na przykład ".js.map".

1

przejdź do Ustawienia -> Pokaż ustawienia zaawansowane -> Wyczyść dane przeglądarki -> Sprawdź tylko „buforowane obrazy i pliki” -> kliknij „Wyczyść dane przeglądania”

Usuniemy źródło mapy masz buforowane w przeglądarka bez usuwania wszystkich plików cookie.

+0

Nienawidzę tracić całą moją historię! – madannes

+0

W jaki sposób powyższa utrata historii jest @madannes? – Arjan

+0

Przepraszam .. powinny być bardziej przejrzyste. Chciałbym powiedzieć, że podoba mi się ta odpowiedź lepiej, ponieważ nie cierpię tracić * całej * mojej historii, jaka miałaby miejsce w/"Clear Browser Cache". Szkoda, nie mogę zobaczyć, jak edytować poprzedni komentarz =) – madannes

0

Rozwiązałem problem przez usunięcie pliku .map i wykonanie twardego przeładowania (CTRL-F5).

Nie chciałem stracić całej mojej historii!

Powiązane problemy