Heim > Artikel > Web-Frontend > So leeren Sie den Browser-Cache in AngularJs
In diesem Artikel wird hauptsächlich die Methode zum Löschen des Browser-Cache in AngularJs vorgestellt. Der Herausgeber findet sie recht gut. Jetzt werde ich sie mit Ihnen teilen und als Referenz verwenden. Folgen wir dem Editor, um einen Blick darauf zu werfen
Cache-Kapitel
Ein Cache ist eine Komponente, die Daten transparent speichern kann, damit Anfragen in Zukunft schneller bearbeitet werden können. Das wiederholte Abrufen von Ressourcen kann zu Datenduplizierungen führen und Zeit in Anspruch nehmen. Daher ist Caching für einige Daten mit geringer Variabilität geeignet. Je mehr Anfragen der Cache bedienen kann, desto mehr kann die Gesamtsystemleistung verbessert werden.
Browser-Cache, manchmal brauchen wir ihn, weil er die Website-Leistung und die Browsergeschwindigkeit verbessern und die Website-Leistung verbessern kann. Aber manchmal müssen wir den Cache leeren, da der Cache Probleme verursachen und einige fehlerhafte Daten erscheinen können. Beispielsweise müssen Bestandswebsites nicht zwischengespeichert werden. Einige Websites werden selten aktualisiert, daher ist es besser, einen Cache zu haben.
Das Folgende ist die traditionelle Methode zum Löschen des Browsers
Meta-Methode
//不缓存 <META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> <META HTTP-EQUIV="expires" CONTENT="0">
Löschen Sie den temporären Cache des Formulars
<body onLoad="javascript:document.yourFormName.reset()">
Ajax-Cache leeren
$.ajax({ url:'www.haorooms.com', dataType:'json', data:{}, cache:false, ifModified :true , success:function(response){ //操作 } async:false });
Zufallszahlen sind auch eine sehr gute Möglichkeit, Caching zu vermeiden!
Füge „?ran=" + Math.random(); //Natürlich kann der hier ausgeführte Parameter beliebig gewählt werden
Zufällige Zeit verwenden, genau wie Zufallszahl.
Fügen Sie „?timestamp=" + new Date().getTime(); nach dem URL-Parameter hinzu
Verwenden Sie PHP-Backend zum Bereinigen
Header hinzufügen („Cache-Control: no-cache, must-revalidate“); usw. auf der Serverseite (z. B. in PHP)
Das Folgende ist eine Einführung in die Methode zum Löschen des Browsers Im AngularJs-Projekt ist die obige Methode natürlich auch anwendbar, aber für AngularJs müssen die folgenden Elemente hinzugefügt werden:
1
.run(function($rootScope, $templateCache) { $rootScope.$on('$routeChangeStart', function(event, next, current) { if (typeof(current) !== 'undefined'){ $templateCache.remove(current.templateUrl); } }); });
2. Zufällige HTML-Parameter hinzufügen
.state("content", { url: "/", views:{ "bodyInfo":{templateUrl: 'tpls/bodyInfo.html?'+ +new Date(), controller:'bodyInfoCtrl'}, "header":{templateUrl: 'tpls/header.html?'+ +new Date(), controller:'headerCtrl' }, "footer":{templateUrl: 'tpls/footer.html?'+ +new Date(), controller:'footerCtrl' } } })rreee
3. Routen-Cache löschen
<link rel="stylesheet" href="stylesheets/main.css?version=1.0.3" rel="external nofollow" >Okay... das ist alles Wenn es andere Methoden gibt, geben Sie mir bitte einen Rat, Maze! Ich habe das Obige für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird. Verwandte Artikel:
So implementieren Sie Zirkelverweise zwischen Komponenten in Vue.js
Es gibt Beispiele für asynchrone Komponenten in Vue
So beheben Sie den maximalen Aufrufstapelfehler in nodejs
So implementieren Sie eine Blog-Verwaltungsplattform in Vue+SpringBoot
Das obige ist der detaillierte Inhalt vonSo leeren Sie den Browser-Cache in AngularJs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!