


Explication détaillée des cas d'utilisation du cache personnalisé AngularJS
Cette fois, je vous apporte une explication détaillée du cas d'utilisation du cache personnalisé angularjs Quelles sont les précautions lors de l'utilisation du cache personnalisé angulairejs. jetez un oeil.
1. Qu'est-ce qu'un cache
Un cache est un composant qui peut stocker des données de manière transparente afin qu'elles puissent être servies plus rapidement à l'avenir. demander.
Plus le cache peut répondre à de requêtes, plus les performances globales du système s'améliorent.
2. Mise en cache dans Angular
2.1 Introduction à $cacheFactory
$cacheFactory est un Un service qui génère des objets de cache pour tous les services Angular. En interne, $cacheFactory crée un objet cache par défaut, même si nous n'en créons pas explicitement un.
Pour créer un objet cache, vous pouvez utiliser $cacheFactory pour créer un cache par un ID :
var cache = $cacheFactory('myCache');
Cette méthode $cacheFactory peut acceptez deux paramètres :
cacheId (String) : Ce cacheId est le nom de l'ID lors de la création du cache. Il peut être référencé en utilisant le nom du cache via la méthode get().
capacité : cette capacité décrit le nombre maximum de paires clé-valeur du cache à stocker et à sauvegarder à l'aide du cache à un moment donné.
2.2 Objet cache
L'objet cache lui-même possède les méthodes suivantes qui peuvent être utilisées pour interagir avec le cache.
info() : La méthode info() renvoie l'ID, la taille et les options de l'objet cache.
put() : La méthode put() nous permet de mettre n'importe quelle clé (chaîne) sous la forme d'un objet JavaScript dans le cache. La méthode cache.put("hello","world");
put() renverra la valeur que nous avons mise dans le cache.
get() : La méthode get() nous permet d'accéder à la valeur du cache correspondant à une clé. Si la clé est trouvée, elle renvoie sa valeur ; sinon, elle renvoie undefined . cache.get("hello");
remove() : La fonction remove() est utilisée pour supprimer une paire clé-valeur du cache si elle est trouvée. S'il n'est pas trouvé, il renvoie undefined . cache.remove("hello");
removeAll() : La fonction removeAll() est utilisée pour réinitialiser le cache et supprimer toutes les valeurs mises en cache.
destory() : La méthode destory() est utilisée pour supprimer toutes les références au cache spécifié du registre de cache $cacheFactory.
3. Cache dans $http
Le service $http d'Angular crée un cache avec l'ID $http. Faire en sorte que les requêtes $http utilisent l'objet cache par défaut est simple : la méthode $http() nous permet de lui passer un paramètre de cache.
3.1 Cache $http par défaut
Le cache $http par défaut est particulièrement utile lorsque les données ne changent pas fréquemment. Vous pouvez le définir comme ceci :
$http({ method: 'GET', url: '/api/users.json', cache: true //设置为true只是用来使用$http默认的缓存机制 });
Maintenant, chaque requête via $http vers l'URL /api/user.json sera stockée dans le cache $http par défaut. La clé de requête dans ce cache $http est le chemin complet de l'URL.
Si nécessaire, vous pouvez également utiliser ce cache $http par défaut (par exemple, si nous lançons une autre requête non mise en cache pour nous rappeler des modifications incrémentielles, nous pouvons l'effacer dans la requête $http par défaut de cette requête).
Afin de référencer la requête par défaut de $http, il suffit d'utiliser l'ID pour récupérer le cache via $cacheFactory() :
var cache = $cacheFactory('$http');
Pour le cache sous contrôle, on peut le faire en cas de besoin Toutes les opérations normales, telles que la récupération d'une réponse mise en cache, la suppression de l'entrée du cache ou la suppression de toutes les références mises en cache.
// 获取上一次请求的缓存 var usersCache = cache.get('http://example.com/api.users.json'); // 删除上一次请求的缓存入口 cache.remove('http://example.com/api.users.json'); // 重新开始并移除全部缓存 cache.removeAll();
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); } ); }
3.2 Mise en cache personnalisée
Parfois, vous pouvez avoir plus de contrôle sur le cache et créer des règles pour les performances du cache, ce qui nécessite la création d'un nouveau cache pour utilisez les requêtes $http.
Il est facile de faire des requêtes $http via un cache personnalisé. Au lieu de transmettre un paramètre booléen true à la requête, vous pouvez transmettre l'instance de cache.
var myCache = $cacheFactory('myCache'); $http({ method: 'GET', utl: '/api/users.json', cache: myCache });
一个小demo:定义一个缓存服务,依赖注入到你要用的控制器中,直接使用
define([ 'angularModule' ],function(app){ app.factory('myCache', ['$cacheFactory', function($cacheFactory){ return $cacheFactory('myCache'); //自定义一个缓存服务 }]) });
//自定义缓存,有缓存就从缓存里取,否则就发送请求 if(myCache.get('cacheData')){ console.log(myCache.get('cacheData')); }else{ helloService.play(myCache).then( function (data) { myCache.put("cacheData", data); console.log(data); } ); } cache:只是为了可以使用默认$http的缓存机制 play : function (myCache) { return httpRequestService.request({ method : 'get', url : 'http://localhost:8080/hello/play', cache : myCache }) }
现在, $http 将会使用自定义的缓存而非默认缓存。
四、为 $http 设置默认缓存
每次我们想要发起一个 $http 请求时都要给它传递一个缓存实例并不方便,特别是对每个请求使用同一缓存的时候。
其实可以在模块的 .config() 方法中通过 $httpProvider 设置 $http 默认使用的缓存对象。
angular.module('myApp', []).config(function($httpProvider) { $httpProvider.defaults.cache = $cacheFactory('myCache', {capacity: 20}); });
这个 $http 服务不再使用它为我们创建的默认缓存;它会使用我们自定义的缓存,实际上这就是一个近期缓存最久未使用算法① (Least Recently Used,LRU)。
LRU缓存根据缓存容量只保留最新的缓存数目。也就是说,我们的缓存容量为20,因此会缓存前20个请求,但是进入第21个请求时,最近最少使用的请求条目就会从缓存中被删除。这个缓存自身会负责具体哪些要维护,哪些要移除。
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Un avatar sur Netflix est une représentation visuelle de votre identité de streaming. Les utilisateurs peuvent aller au-delà de l'avatar par défaut pour exprimer leur personnalité. Continuez à lire cet article pour savoir comment définir une photo de profil personnalisée dans l'application Netflix. Comment définir rapidement un avatar personnalisé dans Netflix Dans Netflix, il n'y a pas de fonctionnalité intégrée pour définir une photo de profil. Cependant, vous pouvez le faire en installant l'extension Netflix sur votre navigateur. Tout d’abord, installez une photo de profil personnalisée pour l’extension Netflix sur votre navigateur. Vous pouvez l'acheter dans la boutique Chrome. Après avoir installé l'extension, ouvrez Netflix sur votre navigateur et connectez-vous à votre compte. Accédez à votre profil dans le coin supérieur droit et cliquez sur

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de reconnaissance vocale en ligne Introduction : Avec le développement continu de la technologie, la technologie de reconnaissance vocale est devenue une partie importante du domaine de l'intelligence artificielle. Le système de reconnaissance vocale en ligne basé sur WebSocket et JavaScript présente les caractéristiques d'une faible latence, d'un temps réel et d'une multiplateforme, et est devenu une solution largement utilisée. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de reconnaissance vocale en ligne.

Comment personnaliser les paramètres des touches de raccourci dans Eclipse ? En tant que développeur, la maîtrise des touches de raccourci est l'une des clés pour améliorer l'efficacité du codage dans Eclipse. En tant qu'environnement de développement intégré puissant, Eclipse fournit non seulement de nombreuses touches de raccourci par défaut, mais permet également aux utilisateurs de les personnaliser selon leurs propres préférences. Cet article explique comment personnaliser les paramètres des touches de raccourci dans Eclipse et donne des exemples de code spécifiques. Ouvrez Eclipse Tout d'abord, ouvrez Eclipse et entrez

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

1. L'image ci-dessous est la disposition d'écran par défaut d'edius. La disposition par défaut de la fenêtre EDIUS est une disposition horizontale. Par conséquent, dans un environnement à moniteur unique, de nombreuses fenêtres se chevauchent et la fenêtre d'aperçu est en mode fenêtre unique. 2. Vous pouvez activer le [Mode double fenêtre] via la barre de menu [Affichage] pour que la fenêtre d'aperçu affiche simultanément la fenêtre de lecture et la fenêtre d'enregistrement. 3. Vous pouvez restaurer la disposition d'écran par défaut via [Barre de menu Affichage> Disposition des fenêtres> Général]. De plus, vous pouvez également personnaliser la disposition qui vous convient et l'enregistrer comme disposition d'écran couramment utilisée : faites glisser la fenêtre vers une disposition qui vous convient, puis cliquez sur [Affichage > Disposition de la fenêtre > Enregistrer la disposition actuelle > Nouveau], et dans le pop-up [Enregistrer la mise en page actuelle] Mise en page] entrez le nom de la mise en page dans la petite fenêtre et cliquez sur OK

Introduction à l'utilisation de JavaScript et de WebSocket pour mettre en œuvre un système de commande en ligne en temps réel : avec la popularité d'Internet et les progrès de la technologie, de plus en plus de restaurants ont commencé à proposer des services de commande en ligne. Afin de mettre en œuvre un système de commande en ligne en temps réel, nous pouvons utiliser les technologies JavaScript et WebSocket. WebSocket est un protocole de communication full-duplex basé sur le protocole TCP, qui peut réaliser une communication bidirectionnelle en temps réel entre le client et le serveur. Dans le système de commande en ligne en temps réel, lorsque l'utilisateur sélectionne des plats et passe une commande

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de réservation en ligne. À l'ère numérique d'aujourd'hui, de plus en plus d'entreprises et de services doivent fournir des fonctions de réservation en ligne. Il est crucial de mettre en place un système de réservation en ligne efficace et en temps réel. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de réservation en ligne et fournit des exemples de code spécifiques. 1. Qu'est-ce que WebSocket ? WebSocket est une méthode full-duplex sur une seule connexion TCP.

Dans un tableau Excel, vous devrez parfois insérer des axes de coordonnées pour voir l'évolution des données de manière plus intuitive. Certains amis ne savent toujours pas comment insérer les axes de coordonnées dans le tableau. Ensuite, je partagerai avec vous comment personnaliser l'échelle des axes de coordonnées dans Excel. Méthode d'insertion de l'axe des coordonnées : 1. Dans l'interface Excel, sélectionnez les données. 2. Dans l'interface d'insertion, cliquez pour insérer un histogramme ou un histogramme. 3. Dans l'interface développée, sélectionnez le type de graphique. 4. Dans l'interface contextuelle du tableau, cliquez sur Sélectionner les données. 5. Dans l'interface étendue, vous pouvez la personnaliser.
