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

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

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

(NB. Кэширование script веб-сервером отсутствует)

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

Ответ 1

Пока вы разрабатываете свой script, попробуйте отключить кеш Chrome:

Open settings

Disable the cache

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

Ответ 2

enter image description here

Это лучший способ, которым я живу... Позаботьтесь, чтобы окно инспектора нужно было открыть, чтобы увидеть это контекстное меню, удерживая кнопку обновления BTW: Обычно я использую Empty cache и hard reload

У него есть еще одно преимущество: он сохраняет все остальные сайты, сохраненные, просто перезагружая и освобождая только этот.

Ответ 3

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

  • Open Dev Tools
  • Перейдите на вкладку "Источники".
  • Найдите script/image/file
  • Проверьте правильную панель, чтобы узнать, обновлен ли ваш файл.

Если нет:

  • Щелкните правой кнопкой мыши ресурс на левой панели и выберите "Открыть ссылку в новой вкладке"
  • Заставить перезагрузку ресурса с помощью CTRL+F5 (mac: Command-Shift-R)

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

Ответ 4

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

Ответ 5

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

  • F12, чтобы открыть Chrome DevTools
  • F1, чтобы открыть настройки DevTools
  • Отключить кеш (в то время как DevTools открыт), как показано ниже:

введите описание изображения здесь

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

Ответ 6

Для Google хром это не Ctrl + F5. Это Shift + F5, чтобы очистить текущий кеш! Это работает для меня!

Ответ 7

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

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

Ответ 8

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

Я считаю это ошибкой в ​​хроме. Я использую версию версии 46.0.2490.71 м.

Единственное, что помогает, - перезапустить хром (закрыть все хромовые браузеры).

Ответ 9

В Windows Ctrl + Shift + r приведет к перезагрузке script в chrome.

Ответ 10

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

  • Очистите кэш как все сказали

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

Ответ 11

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

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

#Disable image serving for network mounted drive
EnableSendfile off

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

Ответ 12

Есть также 2 (быстрых) обходных пути:

  • Используйте режим отладки в режиме инкогнито, закройте окно и снова откройте его.
  • Удалить историю просмотров

Ответ 13

Отключение точек останова вызвало загрузку нового script.

Ответ 14

По-моему, проще всего работать на "приватном сеансе просмотра" хром, чтобы ваши файлы javascript не поступали из кеша.