Heim Web-Frontend js-Tutorial So bedienen Sie den AngularJS-Cache

So bedienen Sie den AngularJS-Cache

Jun 15, 2018 pm 03:00 PM
angular 缓存

Dieses Mal zeige ich Ihnen, wie Sie den AngularJS-Cache bedienen und welche Vorsichtsmaßnahmen für den Betrieb des AngularJS-Cache gelten. Das Folgende ist ein praktischer Fall, schauen wir uns das an.

1. Was ist ein Cache

Ein Cache ist eine Komponente, die Daten transparent speichern kann, damit sie in Zukunft schneller bereitgestellt werden können fragen.

Je mehr Anfragen der Cache bedienen kann, desto mehr verbessert sich die Gesamtsystemleistung.

2. Caching in Angular

2.1 Einführung in $cacheFactory

$cacheFactory ist ein Ein Dienst, der Cache-Objekte für alle Angular-Dienste generiert. Intern erstellt $cacheFactory ein Standard-Cache-Objekt, auch wenn wir nicht explizit eines erstellen.

Um ein Cache-Objekt zu erstellen, können Sie $cacheFactory verwenden, um einen Cache anhand einer ID zu erstellen:

var cache = $cacheFactory('myCache');
Diese $cacheFactory-Methode kann Akzeptieren Sie zwei Parameter:

cacheId (string): Diese CacheId ist der ID-Name beim Erstellen des Caches. Es kann mithilfe des Cache-Namens über die Methode get() referenziert werden.

Kapazität: Diese Kapazität beschreibt die maximale Anzahl von Cache-Schlüssel-Wert-Paaren, die zu einem bestimmten Zeitpunkt gespeichert und mithilfe des Caches gespeichert werden sollen.

2.2 Cache-Objekt

Das Cache-Objekt selbst verfügt über die folgenden Methoden, die zur Interaktion mit dem Cache verwendet werden können.

info(): Die Methode info() gibt die ID, Größe und Optionen des Cache-Objekts zurück.

put(): Die Methode put() ermöglicht es uns, einen beliebigen Schlüssel (String) in Form eines JavaScript-Objektwerts in den Cache zu legen. Die Methode „cache.put("hello","world");

put() gibt den Wert zurück, den wir in den Cache gelegt haben.

get(): Die Methode get() ermöglicht uns den Zugriff auf den Cache-Wert, der einem Schlüssel entspricht. Wenn der Schlüssel gefunden wird, gibt er seinen Wert zurück; wenn nicht, gibt er undefiniert zurück. cache.get("hello");

remove(): Die Funktion „remove()“ wird verwendet, um ein Schlüssel-Wert-Paar aus dem Cache zu entfernen, wenn es gefunden wird. Wenn es nicht gefunden wird, wird undefiniert zurückgegeben. cache.remove("hello");

removeAll(): Die Funktion „removeAll()“ wird verwendet, um den Cache zurückzusetzen und alle zwischengespeicherten Werte zu entfernen.

destory(): Die Methode destory() wird verwendet, um alle Verweise auf den angegebenen Cache aus der $cacheFactory-Cache-Registrierung zu entfernen.

3. Cache in $http

Der $http-Dienst von Angular erstellt einen Cache mit der ID $http. Es ist einfach, bei $http-Anfragen das Standard-Cache-Objekt zu verwenden: Mit der Methode $http() können wir ihr einen Cache-Parameter übergeben.

3.1 Standard-$http-Cache

Der standardmäßige $http-Cache ist besonders nützlich, wenn sich die Daten nicht häufig ändern. Sie können es so einstellen:

$http({
  method: 'GET',
  url: '/api/users.json',
  cache: true  //设置为true只是用来使用$http默认的缓存机制
});
Nach dem Login kopieren

Jetzt wird jede Anfrage über $http an die URL /api/user.json im Standard-$http-Cache gespeichert. Der Anforderungsschlüssel in diesem $http-Cache ist der vollständige URL-Pfad.

Bei Bedarf können Sie diesen Standard-$http-Cache auch betreiben (wenn wir beispielsweise eine weitere nicht zwischengespeicherte Anfrage initiieren, um uns an inkrementelle Änderungen zu erinnern, können wir ihn in der Standard-$http-Anfrage dieser Anfrage löschen).

Um auf die Standardanforderung für $http zu verweisen, rufen Sie einfach den Cache über $cacheFactory() mit der ID ab:

var cache = $cacheFactory('$http');
Nach dem Login kopieren

Wenn der Cache unter Kontrolle ist, können wir bei Bedarf die gesamte Arbeit erledigen. Normal Vorgänge wie das Abrufen einer zwischengespeicherten Antwort, das Löschen des Eintrags aus dem Cache oder das Entfernen aller zwischengespeicherten Referenzen.

// 获取上一次请求的缓存
var usersCache = cache.get('http://example.com/api.users.json');
// 删除上一次请求的缓存入口
cache.remove('http://example.com/api.users.json');
// 重新开始并移除全部缓存
cache.removeAll();
Nach dem Login kopieren
rrree

3.2 Benutzerdefinierter Cache

Manchmal ist es möglich, mehr Kontrolle über den Cache zu haben und Regeln für die Cache-Leistung zu erstellen, was die Erstellung eines neuen Caches erfordert Anfrage.

Es ist einfach, $http-Anfragen über einen benutzerdefinierten Cache zu stellen. Anstatt der Anfrage einen booleschen Parameter „true“ zu übergeben, können Sie die Cache-Instanz übergeben.

    var cache = $cacheFactory.get('$http');
    if(cache.get('cacheData')){
      console.log(cache.get('cacheData'));
    }else{
      helloService.play().then(
        function (data) {
          cache.put("cacheData", data);  //往缓存中放入数据
          console.log(data);
        }
      );
    }
Nach dem Login kopieren

Eine kleine Demo: Definieren Sie einen Cache-Dienst, fügen Sie Abhängigkeiten in den Controller ein, den Sie verwenden möchten, und verwenden Sie ihn direkt

var myCache = $cacheFactory('myCache');
$http({
  method: 'GET',
  utl: '/api/users.json',
  cache: myCache
});
Nach dem Login kopieren
define([
  'angularModule'
],function(app){
  app.factory('myCache', ['$cacheFactory', function($cacheFactory){
    return $cacheFactory('myCache'); //自定义一个缓存服务
  }])
});
Nach dem Login kopieren

Jetzt verwendet $http den benutzerdefinierten Cache anstelle des Standardcaches.

4. Legen Sie den Standardcache für $http fest

每次我们想要发起一个 $http 请求时都要给它传递一个缓存实例并不方便,特别是对每个请求使用同一缓存的时候。

其实可以在模块的 .config() 方法中通过 $httpProvider 设置 $http 默认使用的缓存对象。

angular.module('myApp', []).config(function($httpProvider) {
  $httpProvider.defaults.cache = $cacheFactory('myCache', {capacity: 20});
});
Nach dem Login kopieren

这个 $http 服务不再使用它为我们创建的默认缓存;它会使用我们自定义的缓存,实际上这就是一个近期缓存最久未使用算法① (Least Recently Used,LRU)。

LRU缓存根据缓存容量只保留最新的缓存数目。也就是说,我们的缓存容量为20,因此会缓存前20个请求,但是进入第21个请求时,最近最少使用的请求条目就会从缓存中被删除。这个缓存自身会负责具体哪些要维护,哪些要移除。

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

jquery+fullpage添加界面内的头部与版权

如何使用webpack+vue环境局域网

Das obige ist der detaillierte Inhalt vonSo bedienen Sie den AngularJS-Cache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wo werden Videodateien im Browser-Cache gespeichert? Wo werden Videodateien im Browser-Cache gespeichert? Feb 19, 2024 pm 05:09 PM

In welchem ​​Ordner speichert der Browser das Video? Wenn wir den Internetbrowser täglich nutzen, schauen wir uns häufig verschiedene Online-Videos an, z. B. Musikvideos auf YouTube oder Filme auf Netflix. Diese Videos werden während des Ladevorgangs vom Browser zwischengespeichert, sodass sie bei späterer erneuter Wiedergabe schnell geladen werden können. Die Frage ist also: In welchem ​​Ordner werden diese zwischengespeicherten Videos tatsächlich gespeichert? Verschiedene Browser speichern zwischengespeicherte Videoordner an unterschiedlichen Orten. Im Folgenden stellen wir einige gängige Browser und deren Funktionen vor

So installieren Sie Angular unter Ubuntu 24.04 So installieren Sie Angular unter Ubuntu 24.04 Mar 23, 2024 pm 12:20 PM

Angular.js ist eine frei zugängliche JavaScript-Plattform zum Erstellen dynamischer Anwendungen. Es ermöglicht Ihnen, verschiedene Aspekte Ihrer Anwendung schnell und klar auszudrücken, indem Sie die Syntax von HTML als Vorlagensprache erweitern. Angular.js bietet eine Reihe von Tools, die Sie beim Schreiben, Aktualisieren und Testen Ihres Codes unterstützen. Darüber hinaus bietet es viele Funktionen wie Routing und Formularverwaltung. In dieser Anleitung wird erläutert, wie Angular auf Ubuntu24 installiert wird. Zuerst müssen Sie Node.js installieren. Node.js ist eine JavaScript-Ausführungsumgebung, die auf der ChromeV8-Engine basiert und es Ihnen ermöglicht, JavaScript-Code auf der Serverseite auszuführen. In Ub sein

So zeigen Sie den DNS-Cache unter Linux an und aktualisieren ihn So zeigen Sie den DNS-Cache unter Linux an und aktualisieren ihn Mar 07, 2024 am 08:43 AM

DNS (DomainNameSystem) ist ein System, das im Internet verwendet wird, um Domänennamen in entsprechende IP-Adressen umzuwandeln. In Linux-Systemen ist DNS-Caching ein Mechanismus, der die Zuordnungsbeziehung zwischen Domänennamen und IP-Adressen lokal speichert, was die Geschwindigkeit der Domänennamenauflösung erhöhen und die Belastung des DNS-Servers verringern kann. DNS-Caching ermöglicht es dem System, die IP-Adresse schnell abzurufen, wenn es anschließend auf denselben Domänennamen zugreift, ohne jedes Mal eine Abfrageanforderung an den DNS-Server senden zu müssen, wodurch die Netzwerkleistung und -effizienz verbessert wird. In diesem Artikel erfahren Sie, wie Sie den DNS-Cache unter Linux anzeigen und aktualisieren, sowie zugehörige Details und Beispielcode. Bedeutung des DNS-Cachings In Linux-Systemen spielt das DNS-Caching eine Schlüsselrolle. seine Existenz

Beschleunigen Sie Ihre Anwendungen: Eine einfache Anleitung zum Guava-Caching Beschleunigen Sie Ihre Anwendungen: Eine einfache Anleitung zum Guava-Caching Jan 31, 2024 pm 09:11 PM

Erste Schritte mit Guava Cache: Beschleunigen Sie Ihre Anwendungen. Guava Cache ist eine leistungsstarke In-Memory-Caching-Bibliothek, die die Anwendungsleistung erheblich verbessern kann. Es bietet eine Vielzahl von Caching-Strategien, darunter LRU (zuletzt verwendet), LFU (zuletzt verwendet) und TTL (Lebensdauer). 1. Installieren Sie den Guava-Cache und fügen Sie Ihrem Projekt die Abhängigkeit der Guava-Cache-Bibliothek hinzu. com.goog

Winkelkomponenten und ihre Anzeigeeigenschaften: Nicht-Block-Standardwerte verstehen Winkelkomponenten und ihre Anzeigeeigenschaften: Nicht-Block-Standardwerte verstehen Mar 15, 2024 pm 04:51 PM

Das Standardanzeigeverhalten für Komponenten im Angular-Framework gilt nicht für Elemente auf Blockebene. Diese Designwahl fördert die Kapselung von Komponentenstilen und ermutigt Entwickler, bewusst zu definieren, wie jede Komponente angezeigt wird. Durch explizites Festlegen der CSS-Eigenschaft display kann die Anzeige von Angular-Komponenten vollständig gesteuert werden, um das gewünschte Layout und die gewünschte Reaktionsfähigkeit zu erreichen.

Werden HTML-Dateien zwischengespeichert? Werden HTML-Dateien zwischengespeichert? Feb 19, 2024 pm 01:51 PM

Titel: Caching-Mechanismus und Codebeispiele für HTML-Dateien. Einführung: Beim Schreiben von Webseiten stoßen wir häufig auf Probleme mit dem Browser-Cache. In diesem Artikel wird der Caching-Mechanismus von HTML-Dateien ausführlich vorgestellt und einige spezifische Codebeispiele bereitgestellt, um den Lesern zu helfen, diesen Mechanismus besser zu verstehen und anzuwenden. 1. Browser-Caching-Prinzip Im Browser prüft der Browser bei jedem Zugriff auf eine Webseite zunächst, ob sich eine Kopie der Webseite im Cache befindet. Wenn dies der Fall ist, wird der Inhalt der Webseite direkt aus dem Cache abgerufen. Dies ist das Grundprinzip des Browser-Caching. Vorteile des Browser-Caching-Mechanismus

Erweiterte Verwendung von PHP APCu: Die verborgene Kraft freisetzen Erweiterte Verwendung von PHP APCu: Die verborgene Kraft freisetzen Mar 01, 2024 pm 09:10 PM

PHPAPCu (Ersatz für PHP-Cache) ist ein Opcode-Cache- und Daten-Cache-Modul, das PHP-Anwendungen beschleunigt. Das Verständnis seiner erweiterten Funktionen ist entscheidend, um sein volles Potenzial auszuschöpfen. 1. Batch-Betrieb: APCu bietet eine Batch-Betriebsmethode, mit der eine große Anzahl von Schlüssel-Wert-Paaren gleichzeitig verarbeitet werden kann. Dies ist nützlich für umfangreiche Cache-Löschvorgänge oder Aktualisierungen. //Cache-Schlüssel stapelweise abrufen $values=apcu_fetch(["key1","key2","key3"]); //Cache-Schlüssel stapelweise löschen apcu_delete(["key1","key2","key3"]) ;2 .Cache-Ablaufzeit festlegen: Mit APCu können Sie eine Ablaufzeit für Cache-Elemente festlegen, sodass diese nach einer bestimmten Zeit automatisch ablaufen.

So speichern Sie Videodateien aus dem Browser-Cache lokal So speichern Sie Videodateien aus dem Browser-Cache lokal Feb 23, 2024 pm 06:45 PM

So exportieren Sie Browser-Cache-Videos Mit der rasanten Entwicklung des Internets sind Videos zu einem unverzichtbaren Bestandteil des täglichen Lebens der Menschen geworden. Beim Surfen im Internet stoßen wir oft auf Videoinhalte, die wir speichern oder teilen möchten, aber manchmal können wir die Quelle der Videodateien nicht finden, weil sie möglicherweise nur im Cache des Browsers vorhanden sind. Wie exportieren Sie also Videos aus Ihrem Browser-Cache? In diesem Artikel werden Ihnen mehrere gängige Methoden vorgestellt. Zunächst müssen wir ein Konzept klären, nämlich den Browser-Cache. Der Browser-Cache wird vom Browser verwendet, um die Benutzererfahrung zu verbessern.

See all articles