Как заставить отладчик сценариев Chrome перезагрузить javascript?

Мне очень нравится возможность редактировать javascript в отладчике chrome, однако я считаю, что может быть очень проблематично заставить отладчик повторно извлекать JavaScript с сервера.

иногда мне нужно зайти так далеко, просто закрыв отладчик и перезагрузив фрейм, работает нормально, но в других случаях (dI не может определить, при каких условиях это происходит) я должен очистить свой временный интернет - кэш. Иногда я клянусь, что мне нужно полностью закрыть chrome, а затем очистить кэш а затем загрузите страницу, прежде чем отладчик, наконец, покажет мне самый современный скрипт.

(NB. Отсутствует кэширование скрипта веб-сервером)

Мне было интересно, знает ли кто-нибудь о быстром и простом способе сказать отладчику, чтобы аннулировать весь его javascript и получить его все заново при перезагрузке страницы?

15 ответов


во время разработки сценария попробуйте отключить кэш Chrome.

когда вы перезагружаете страницу, JavaScript теперь должен обновляться.


Chrome около 2011

Open settingsDisable the cache


Chrome около 2018

Open settings Disable the cache

вы также можете получить доступ к нему на вкладке Сеть:

Network tab


enter image description here

контекстное меню, показанное выше можно щелкните правой кнопкой мыши / presssing & holding кнопка "перезагрузить", в то время как Chrome Dev Tools открывается.

пустой кэш и жесткая перезагрузка лучше всего подходит для меня.

Еще Одно Преимущество: эта опция сохраняет все другие открытые вкладки и данные веб-сайта нетронутыми. Он только перезагружает и очищает текущую страницу.


вы всегда можете четко определенный файл, выполнив следующие действия:

  1. Открыть Dev Tools
  2. перейдите на вкладку источник
  3. найдите свой скрипт / изображение / файл
  4. Проверьте правую панель, чтобы увидеть, если ваш файл в актуальном состоянии

Если нет:

  1. щелкните правой кнопкой мыши ресурс на левой панели и выберите "Открыть ссылку в новой вкладке"
  2. обновить ресурс с CTRL+F5 (mac: Command-Shift-R)

Это очень удобно, если у вас есть ресурсы, которые в рамках и CTRL+F5 не силой, освежает их.


Shift+Ф5 быстро очищает кэш.


для Google chrome это не Ctrl+Ф5. Это Shift+Ф5 очистить текущий кэш! Это работает для меня !


вот ярлык для DevTools:

  1. F12 чтобы открыть Chrome DevTools
  2. F1 чтобы открыть Настройки DevTools
  3. Регистрация отключить кэш (в то время как DevTools открыт) как показано ниже:

enter image description here

Примечание: Обновлено в комментарии Dimi. Они склонны перемещать его, поэтому дайте мне знать или обновите сообщение, если заметите, что оно изменилось.


Если вы вносите локальные изменения в javascript в инструментах разработчика, вам нужно убедиться, что вы отключили эти изменения перед перезагрузкой страницы.

на вкладке "Источники" с открытым скриптом щелкните правой кнопкой мыши в скрипте и выберите опцию "локальные изменения" в контекстном меню. Это вызывает список скриптов, в которые вы сохранили изменения. Если вы видите его в этом окне, инструменты разработчика всегда будут хранить Вашу локальную копию, а не обновлять ее из сервер. Нажмите кнопку "Вернуть", затем снова обновите, и вы должны получить новую копию.


На Windows, Ctrl+ Shift+r заставит перезагрузить скрипт в chrome.


похоже, что отладчик Chrome загружает исходные файлы в память и не отпускает их, несмотря на обновления кэша браузера, т. е. у него есть свой собственный кэш, кроме кэша браузера, который не синхронизирован. По крайней мере, это имеет место при работе с исходными сопоставленными файлами (я отлаживаю источники typescript). После успешного обновления кэша браузера и проверки этого, перейдя непосредственно к исходному файлу, вы загружаете обновленный файл, но как только вы снова открываете файл в отладчике, он продолжит возвращать старый файл независимо от версии из обычного кэша браузера. Очень неприятно.

Я бы счел это ошибкой в chrome. Я использую версию версии 46.0.2490.71 m.

единственное, что помогает, это перезапуск chrome (закройте все браузеры chrome).


Если файлы, которые вы загружаете, кэшируются, и если внесенные вами изменения не отражены в коде, то есть 2 способа справиться с этим

  1. очистить кэш, как все говорили

  2. Если вы хотите кэш и только файлы должны быть перезагружены, вы можете перейти на вкладку network инструмента dev и очистить все, что было загружено. в следующий раз он не будет загружать их из кэша. у вас будут последние изменения.


если вы используете локальный сервер на Apache, вы можете получить то, что похоже на проблемы с кэшированием. Это случилось со мной, когда у меня был сервер Apache, работающий под Vagrant (в virtualbox).

просто добавьте следующие строки в ваш файл конфигурации (/etc/httpd/conf/httpd.conf или эквивалент):

#Disable image serving for network mounted drive
EnableSendfile off

обратите внимание, что стоит поискать в конфигурационном файле, чтобы увидеть, если EnableSendfile установлено значение on где-либо еще.


есть также 2 (быстрые) способы:

  1. используйте режим инкогнито wile отладки, закройте окно и снова откройте его.
  2. удалить историю просмотра

деактивация точек останова вызвала загрузку нового скрипта для меня.


на мой взгляд, проще всего работать в "частном сеансе просмотра" chrome, чтобы убедиться, что ваши файлы javascript не поступают из кэша.


вы также можете использовать это расширение Chrome для быстрого переключения между использованием или нет кэша: https://chrome.google.com/webstore/detail/cache-killer/jpfbieopdmepaolggioebjmedmclkbap