Ich mag die Möglichkeit, Javascript im Chrome-Debugger zu bearbeiten, sehr. Ich finde jedoch, dass es sehr problematisch sein kann, den Debugger dazu zu bringen, das JavaScript erneut vom Server abzurufen.
Manchmal muss ich so weit gehen, dass nur der Debugger geschlossen und der Frame neu geladen wird. Aber manchmal (ein dI kann nicht feststellen, unter welchen Bedingungen dies geschieht) muss ich meinen temporären Internet-Cache leeren. Manchmal schwöre ich, ich muss Chrome vollständig schließen, dann den Cache leeren und dann die Seite laden, bevor der Debugger mir endlich das aktuellste Skript anzeigt.
(Hinweis: Das Skript wird vom Webserver nicht zwischengespeichert.)
Ich habe mich gefragt, ob jemand eine schnelle und einfache Möglichkeit kennt, den Debugger anzuweisen, sein gesamtes Javascript ungültig zu machen und alles beim erneuten Laden der Seite neu abzurufen.
quelle
Antworten:
Versuchen Sie während der Entwicklung Ihres Skripts, den Chrome-Cache zu deaktivieren.
Wenn Sie die Seite neu laden, sollte das JavaScript jetzt aktualisiert werden.
Chrome circa 2011
Chrom um 2018
Sie können auch auf der Registerkarte Netzwerk darauf zugreifen:
quelle
Das oben gezeigte Kontextmenü kann durch Klicken mit der rechten Maustaste / Drücken und Halten der Schaltfläche " Neu laden" aufgerufen werden , während Chrome Dev Tools geöffnet wird .
Leerer Cache und hartes Neuladen funktionieren am besten für mich.
Ein weiterer Vorteil: Diese Option lässt alle anderen geöffneten Registerkarten und Website-Daten unberührt. Es wird nur die aktuelle Seite neu geladen und gelöscht.
quelle
Sie können eine bestimmte Datei jederzeit wie folgt löschen:
Wenn nicht:
Dies ist sehr praktisch, wenn Sie Ressourcen in Frames haben und diese
CTRL+F5
nicht zwangsweise aktualisieren.quelle
Shift+ F5löscht schnell den Cache.
quelle
Für Google Chrome ist es nicht Ctrl+ F5. Es ist Shift+ F5, um den aktuellen Cache zu leeren! Für mich geht das !
quelle
Hier ist eine Verknüpfung zu DevTools:
Hinweis: Aktualisiert gemäß Dimis Kommentar. Sie neigen dazu, es zu verschieben. Lassen Sie mich den Beitrag wissen oder aktualisieren, wenn Sie feststellen, dass er geändert wurde.
quelle
Unter Windows würde Ctrl+ Shift+ rdas Neuladen des Skripts in Chrome erzwingen.
quelle
Wenn Sie lokale Änderungen an einem Javascript in den Entwicklertools vornehmen, müssen Sie sicherstellen, dass Sie diese Änderungen deaktivieren, bevor Sie die Seite neu laden.
Klicken Sie auf der Registerkarte Quellen bei geöffnetem Skript mit der rechten Maustaste in Ihr Skript und klicken Sie im Kontextmenü auf die Option "Lokale Änderungen". Daraufhin wird die Liste der Skripte angezeigt, in denen Sie Änderungen gespeichert haben. Wenn Sie es in diesem Fenster sehen, behalten die Entwicklertools Ihre lokale Kopie immer bei, anstatt sie vom Server zu aktualisieren. Klicken Sie auf die Schaltfläche "Zurücksetzen" und aktualisieren Sie sie erneut. Sie sollten die neue Kopie erhalten.
quelle
Es scheint, als würde der Chrome-Debugger Quelldateien in den Speicher laden und sie trotz Browser-Cache-Updates nicht loslassen, dh er hat einen eigenen Cache, abgesehen vom nicht synchronisierten Browser-Cache. Zumindest ist dies der Fall, wenn Sie mit zugeordneten Quelldateien arbeiten (ich debugge Typoskriptquellen). Nachdem Sie den Browser-Cache erfolgreich aktualisiert und überprüft haben, indem Sie direkt zur Quelldatei navigieren, laden Sie die aktualisierte Datei herunter. Sobald Sie die Datei im Debugger erneut öffnen, wird die alte Datei unabhängig von der Version aus dem normalen Browser-Cache zurückgegeben. Sehr ärgerlich.
Ich würde dies als einen Fehler in Chrom betrachten. Ich benutze die Version 46.0.2490.71 m.
Das einzige, was hilft, ist das Neustarten von Chrome (schließen Sie alle Chrome-Browser).
quelle
Wenn die Dateien, die Sie laden, zwischengespeichert werden und die von Ihnen vorgenommenen Änderungen nicht im Code enthalten sind, gibt es zwei Möglichkeiten, wie Sie damit umgehen können
Leere den Cache, wie alle sagten
Wenn Sie Cache möchten und nur die Dateien neu geladen werden müssen, können Sie zur Registerkarte Netzwerk des Entwicklertools gehen und löschen, was geladen wurde. Das nächste Mal wird es nicht aus dem Cache geladen. Sie werden Ihre letzten Änderungen haben.
quelle
Wenn Sie einen lokalen Server unter Apache ausführen, können Probleme mit dem Caching auftreten. Dies passierte mir, als ich einen Apache-Server unter Vagrant (in virtualbox) laufen ließ.
Fügen Sie einfach die folgenden Zeilen zu Ihrer Konfigurationsdatei (
/etc/httpd/conf/httpd.conf
oder einer gleichwertigen Datei ) hinzu:Beachten Sie, dass es sich lohnt, die Konfigurationsdatei zu durchsuchen, um festzustellen, ob sie
EnableSendfile
auf eineon
andere Stelle eingestellt ist.quelle
Es gibt auch 2 (schnelle) Problemumgehungen:
quelle
Durch das Deaktivieren von Haltepunkten wurde das neue Skript für mich geladen.
quelle
Meiner Meinung nach ist es am einfachsten, in einer "privaten Browsersitzung" von Chrome zu arbeiten, um sicherzustellen, dass Ihre Javascript-Dateien nicht aus dem Cache stammen.
quelle
Sie können diese Chrome-Erweiterung auch verwenden, um schnell zwischen der Verwendung oder Nichtverwendung des Caches zu wechseln: https://chrome.google.com/webstore/detail/cache-killer/jpfbieopdmepaolggioebjmedmclkbap
quelle