Englisches Dokument
Das jquery-ajax-cache-Plug-in erweitert jQuerys $.ajax
und bietet eine sehr praktische Möglichkeit, Ajax-Anfragen in „localStorage“ oder „sessionStorage“ zwischenzuspeichern. Sie müssen lediglich die Methode cacheValidate
implementieren, um zu überprüfen, ob die zurückgegebenen Ergebnisse zwischengespeichert werden müssen. Das Plug-in löscht abgelaufene Daten beim Laden von Seiten sowie beim Lesen und Schreiben von Daten, um die Ansammlung abgelaufener Daten zu vermeiden. Gleichzeitig können Sie auch $ajaxCache.deleteAllExpires()
aufrufen, um den abgelaufenen Cache manuell zu löschen.
1. Einfach zu bedienen!
2. Immer noch einfach zu bedienen! !
3. Wichtige Dinge dreimal, ganz einfach! ! !
4. Löschen Sie abgelaufene Daten so weit wie möglich, um einen Überlauf zu vermeiden
Laden Sie den neuesten JQuery-Ajax-Cache herunter
Laube
Bower installiert jquery-ajax-cache
npm
npm install jquery-ajax-cache --save-dev
<script src="../node_modules/jquery/dist/jquery.js"></script><script src='../dist/jquery-ajax-cache.min.js'></script>
Denn in tatsächlichen Anwendungen kann das vom Hintergrund zurückgegebene Ergebnis Erfolgs- oder Fehlerinformationen sein. Wir müssen also nur Anfragen puffern, die unserer Meinung nach geschäftlich erfolgreich sind. Das jquery-ajax-cache-Plug-in reserviert eine Methode cacheValidate
, damit Benutzer feststellen können, ob die Anforderung erfolgreich ist.
cacheValidate
global konfigurieren (diese Methode muss einmal global aufgerufen werden)$ajaxCache.config({//Geschäftslogik bestimmt, ob die Anfrage zwischengespeichert wird, res ist das Ajax-Rückgabeergebnis, Optionen ist der Parameter von $.ajax CacheValidate: Funktion (res, Optionen) { //Optional, konfigurieren Sie, ob eine globale Überprüfung erforderlich ist zwischengespeicherte Methoden, „globale Konfiguration“ und „benutzerdefiniert“, mindestens eine Implementierung. Nur zwischenspeichern, wenn bestimmte Bedingungen erfüllt sind // false zurückgeben; // Nicht zwischenspeichern}, storageType: 'localStorage', //Optional, 'localStorage' oder 'sessionStorage', Standard-Timeout für 'localStorage': 60 * 60, //Optional , Einheit ist Sekunden. Der Standardwert ist 1 Stunde});$.ajax({//Fügen Sie bei Verwendung einfach eine Zeile mit Attributen hinzu ajaxCache: trueajaxCache: true // „Globale Konfiguration“ und „Benutzerdefiniert“, mindestens eine Implementierung der CacheValidate-Methode/* andere... */});
cacheValidate
für eine einzelne Anfrage an$.ajax(//Die Parameter hier überschreiben die Einstellungen in „Globale Konfiguration“ ajaxCache: {//Die Geschäftslogik bestimmt, ob die Anfrage zwischengespeichert wird, res gibt das Ergebnis für Ajax zurück, Optionen sind der Parameter der $.ajax-Funktion „cacheValidate:“. (res, Optionen) { //Optional, konfigurieren Sie die globale Methode, um zu überprüfen, ob Caching erforderlich ist, „globale Konfiguration“ und „Benutzerdefiniert“, mindestens eine Implementierung der CacheValidate-Methode gibt true // Caching in allen Fällen // zurück res.state === 'ok'; // Nur zwischenspeichern, wenn bestimmte Bedingungen erfüllt sind // false zurückgeben; // Nicht zwischenspeichern}, storageType: 'localStorage', //Optional, 'localStorage' oder 'sessionStorage', Standard ' localStorage'timeout: 60 * 60, //Optional, Standardeinheit ist 1 Stunde, forceRefresh: false //Optional, Standard ist false. Ob eine Aktualisierungsanforderung erzwungen werden soll, und wenn die Anforderung erfolgreich ist, wird der Cache aktualisiert. Anwendungsszenarien wie: Pulldown-Aktualisierung}});
Es ist kein aktiver Anruf erforderlich, es sei denn, es liegen besondere Umstände vor. Das Plug-in löscht abgelaufene Daten automatisch
$ajaxCache.deleteAllExpires();