


Utilisation d'Axios Element pour implémenter la méthode de chargement de requête globale
Cet article présente principalement la méthode d'utilisation d'Axios Element pour implémenter le chargement global des requêtes. Maintenant, je le partage avec vous et le donne comme référence.
Contexte
Les exigences commerciales sont les suivantes : chaque fois qu'une requête est envoyée au backend, un chargement en plein écran est déclenché et plusieurs requêtes sont fusionnées en une seule. chargement.
Vue, axios, element, etc. sont actuellement utilisés dans le projet, donc l'article parle principalement de la façon d'utiliser axios et element pour implémenter cette fonction.
L'effet est le suivant :
Analyse
Tout d'abord, le chargement démarre lorsque la requête démarre, puis termine le chargement après le retour de la demande. Le but est d’intercepter les demandes et les réponses.
Ensuite, plusieurs requêtes sont fusionnées en un seul chargement.
Enfin, appelez le composant de chargement de l'élément.
Interception des requêtes et des réponses
L'utilisation de base d'axios ne sera pas décrite en détail. L'auteur utilise axios dans le projet en créant des instances.
// 创建axios实例 const $ = axios.create({ baseURL: `${URL_PREFIX}`, timeout: 15000 })
Ensuite, encapsulez la demande de publication (prendre la publication comme exemple)
export default { post: (url, data, config = { showLoading: true }) => $.post(url, data, config) }
axios fournit une interface pour l'interception des requêtes et l'interception des réponses. Chaque requête appellera la méthode showFullScreenLoading, et chaque réponse appellera la méthode tryHideFullScreenLoading()
// 请求拦截器 $.interceptors.request.use((config) => { showFullScreenLoading() return config }, (error) => { return Promise.reject(error) }) // 响应拦截器 $.interceptors.response.use((response) => { tryHideFullScreenLoading() return response }, (error) => { return Promise.reject(error) })
<🎜. >
Ensuite, ce que fait showFullScreenLoading tryHideFullScreenLoading() est de fusionner les requêtes en même temps. Déclarez une variable needLoadingRequestCount et appelez la méthode showFullScreenLoading needLoadingRequestCount + 1 à chaque fois. Appelez la méthode tryHideFullScreenLoading(), needLoadingRequestCount - 1. Lorsque needLoadingRequestCount est égal à 0, le chargement se termine.let needLoadingRequestCount = 0 export function showFullScreenLoading() { if (needLoadingRequestCount === 0) { startLoading() } needLoadingRequestCount++ } export function tryHideFullScreenLoading() { if (needLoadingRequestCount <= 0) return needLoadingRequestCount-- if (needLoadingRequestCount === 0) { endLoading() } }
import { Loading } from 'element-ui' let loading function startLoading() { loading = Loading.service({ lock: true, text: '加载中……', background: 'rgba(0, 0, 0, 0.7)' }) } function endLoading() { loading.close() }
Amélioration de la fonction
En fait, la fonction actuelle est encore un peu pire. Si une certaine requête ne nécessite pas de chargement, ajoutez simplement le paramètre showLoading: false lors de l'envoi de la requête. Lors de l'interception de la demande et de l'interception de la réponse, déterminez si la demande nécessite un chargement. Si un chargement est requis, appelez la méthode showFullScreenLoading(). Lors de l'encapsulation de la demande de publication, l'objet de configuration a été ajouté au troisième paramètre. la configuration inclut le showloading. Traitez-les ensuite séparément dans l’intercepteur.// 请求拦截器 $.interceptors.request.use((config) => { if (config.showLoading) { showFullScreenLoading() } return config }) // 响应拦截器 $.interceptors.response.use((response) => { if (response.config.showLoading) { tryHideFullScreenLoading() } return response })
Explication détaillée de l'introduction mondiale par Vue de la solution de traitement bass.scss
JS construit un arbre binaire pour supprimer les tableaux numériques Explication détaillée de l'accentuation et de l'optimisation
Explication détaillée de l'insertion d'arbre rouge-noir et exemples de méthodes d'implémentation Javascript
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

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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)

Sujets chauds





Il est très courant d'utiliser axios dans les applications Vue. axios est un client HTTP basé sur Promise qui peut être utilisé dans les navigateurs et Node.js. Pendant le processus de développement, le message d'erreur « Uncaught(inpromise)Error : Requestfailedwithstatuscode500 » apparaît parfois pour les développeurs, ce message d'erreur peut être difficile à comprendre et à résoudre. Cet article explorera ceci

Choix de requête de données dans Vue : AxiosorFetch ? Dans le développement de Vue, la gestion des demandes de données est une tâche très courante. Choisir quel outil utiliser pour les demandes de données est une question à considérer. Dans Vue, les deux outils les plus courants sont Axios et Fetch. Cet article comparera les avantages et les inconvénients des deux outils et donnera un exemple de code pour vous aider à faire votre choix. Axios est un client HTTP basé sur Promise qui fonctionne dans les navigateurs et Node.

Méthodes permettant à element.style de modifier les éléments : 1. Modifier la couleur d'arrière-plan de l'élément ; 2. Modifier la taille de la police de l'élément ; 3. Modifier le style de bordure de l'élément ; . Modifier l'alignement horizontal de l'élément. Introduction détaillée : 1. Modifiez la couleur d'arrière-plan de l'élément, la syntaxe est "document.getElementById("myElement").style.backgroundColor = "red";" 2. Modifiez la taille de la police de l'élément, etc.

Récemment, lors du développement d'applications Vue, j'ai rencontré un problème courant : le message d'erreur « TypeError : Failedtofetch ». Ce problème se produit lors de l'utilisation d'axios pour effectuer des requêtes HTTP et que le serveur backend ne répond pas correctement à la requête. Ce message d'erreur indique généralement que la demande ne peut pas atteindre le serveur, probablement pour des raisons de réseau ou parce que le serveur ne répond pas. Que devons-nous faire après l'apparition de ce message d'erreur ? Voici quelques solutions de contournement : Vérifiez votre connexion réseau en raison de

Comment résoudre le problème « Erreur : NetworkError » lors de l'utilisation d'axios dans l'application Vue ? Dans le développement d'applications Vue, nous utilisons souvent axios pour faire des requêtes API ou obtenir des données, mais parfois nous rencontrons « Erreur : NetworkError » dans les requêtes axios. Que devons-nous faire dans ce cas ? Tout d'abord, vous devez comprendre ce que signifie « Erreur : NetworkError ». Cela signifie généralement la connexion réseau.

Utilisez efficacement Vue et Axios pour implémenter le traitement par lots des données frontales. Dans le développement front-end, le traitement des données est une tâche courante. Lorsque nous devons traiter une grande quantité de données, le traitement des données deviendra très lourd et inefficace s’il n’existe pas de méthode efficace. Vue est un excellent framework frontal et Axios est une bibliothèque de requêtes réseau populaire. Ils peuvent travailler ensemble pour implémenter le traitement par lots des données frontales. Cet article présentera en détail comment utiliser efficacement Vue et Axios pour le traitement par lots de données et fournira des exemples de code pertinents.

vue3+ts+axios+pinia réalise un rafraîchissement insensé 1. Téléchargez d'abord aiXos et pinianpmipinia dans le projet--savenpminstallaxios--save2 Encapsuler la requête axios-----Télécharger js-cookienpmiJS-cookie-s//Introduire aixosimporttype{AxiosRequestConfig , AxiosResponse}de"axios";importaxiosfrom'axios';import{ElMess

Que dois-je faire si « Erreur : timeoutofxxxmsexceeded » se produit lors de l'utilisation d'axios dans une application Vue ? Avec le développement rapide d'Internet, la technologie front-end est constamment mise à jour et itérée. En tant qu'excellent framework front-end, Vue a été bien accueillie par tout le monde ces dernières années. Dans les applications Vue, nous devons souvent utiliser axios pour effectuer des requêtes réseau, mais parfois l'erreur « Erreur : timeoutofxxxmsexceeded » se produit.
