Comment implémenter l'effet de chargement global dans Vue
Dans le développement front-end, nous avons souvent un scénario dans lequel l'utilisateur doit attendre que les données soient chargées lors de l'interaction avec la page Web. À ce moment, un effet de chargement est généralement affiché pour rappeler à l'utilisateur de le faire. attendez. Dans le framework Vue, il n'est pas difficile d'implémenter un effet de chargement global. Voyons comment l'implémenter.
Première étape : Créer un plug-in Vue
Nous pouvons créer un plug-in Vue nommé loading
, qui peut être utilisé dans tous les Vue instances Citation. Dans le plug-in, nous devons implémenter les deux méthodes suivantes : loading
的Vue插件,该插件可以在所有的Vue实例中引用。在插件中,我们需要实现以下两个方法:
-
show()
:用于显示loading效果 -
hide()
:用于隐藏loading效果
以下是loading
插件的代码:
const Loading = { show() { // 显示loading效果的代码 }, hide() { // 隐藏loading效果的代码 } } export default { install(Vue) { Vue.prototype.$loading = Loading } }
在上述代码中,我们定义了一个名为Loading
的对象,该对象包含了显示和隐藏loading效果的方法。install()
方法被用于将loading
对象安装到Vue实例上,从而使该对象在所有Vue实例中可以被引用。
第二步:实现loading组件
为了实现loading效果,我们需要在Vue组件中添加一个覆盖整个屏幕的loading层。这可以通过CSS来实现。具体来说,我们可以在Vue组件内动态添加和删除loading层的DOM元素,从而实现loading效果的显示和隐藏。以下是一个简单的loading组件:
<template> <div v-if="visible" class="loading-mask"> <div class="loading-spinner"></div> </div> </template> <script> export default { data() { return { visible: false } }, methods: { show() { this.visible = true }, hide() { this.visible = false } } } </script> <style> .loading-mask { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); z-index: 999; display: flex; align-items: center; justify-content: center; } .loading-spinner { border: 4px solid #f3f3f3; border-radius: 50%; border-top: 4px solid #3498db; width: 60px; height: 60px; -webkit-animation: spin 2s linear infinite; animation: spin 2s linear infinite; } @-webkit-keyframes spin { 0% { -webkit-transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); } } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } </style>
在上述代码中,我们定义了一个名为loading-mask
的div层,它覆盖整个页面,并设置了一个半透明的黑色背景。在loading-mask
中,我们添加了另一个名为loading-spinner
的div层,该层用于显示一个旋转的loading图标。最后,我们在Vue组件的data
中定义了一个visible
变量,用于判断loading层是否需要显示。
第三步:在组件中使用loading
现在我们已经实现了一个基本的loading组件和一个Vue插件,接下来我们需要在Vue组件中使用它们。
首先,在Vue组件中引入刚才创建的Vue插件,并把loading组件添加到当前组件中:
<template> <div> <h1>这是一个Vue组件</h1> <loading ref="loading"></loading> </div> </template> <script> import LoadingPlugin from '@/plugins/loading' import Loading from '@/components/Loading' export default { name: 'HelloWorld', components: { Loading }, mounted() { this.$loading = this.$refs.loading }, plugins: [ LoadingPlugin ], methods: { fetchData() { this.$loading.show() // 显示loading效果 // 发送请求 // ... this.$loading.hide() // 隐藏loading效果 } } } </script>
在上述代码中,我们首先引入了之前创建的Vue插件LoadingPlugin
,然后使用components
属性将loading组件添加到当前组件中。在mounted()
方法中,我们将loading组件的实例赋值给$loading
属性,从而方便我们在当前组件中调用show和hide方法来显示和隐藏loading效果。
最后,在fetchData()方法中,我们可以调用this.$loading.show()
来显示loading效果,在数据加载完毕后,再调用this.$loading.hide()
方法来隐藏它。这样我们就成功地实现了一个全局loading效果。
总结
在本文中,我们介绍了如何在Vue框架中实现一个全局loading效果。我们创建了一个loading
-
show()
: utilisé pour afficher l'effet de chargement - hide( ) : utilisé pour masquer l'effet de chargement
loading
: #🎜🎜 #rrreee#🎜🎜#Dans le code ci-dessus, nous définissons un objet nommé Loading
, qui contient des méthodes pour afficher et masquer l'effet de chargement. La méthode install()
est utilisée pour installer l'objet loading
sur l'instance de Vue afin que l'objet puisse être référencé dans toutes les instances de Vue. #🎜🎜##🎜🎜#Étape 2 : Implémenter le composant de chargement #🎜🎜##🎜🎜#Afin d'obtenir l'effet de chargement, nous devons ajouter une couche de chargement couvrant tout l'écran au composant Vue. Ceci peut être réalisé via CSS. Plus précisément, nous pouvons ajouter et supprimer dynamiquement les éléments DOM de la couche de chargement dans le composant Vue pour afficher et masquer l'effet de chargement. Ce qui suit est un composant de chargement simple : #🎜🎜#rrreee#🎜🎜#Dans le code ci-dessus, nous définissons un calque div nommé loading-mask
, qui couvre toute la page et définit un fond noir translucide. . Dans loading-mask
, nous avons ajouté un autre calque div nommé loading-spinner
, qui est utilisé pour afficher une icône de chargement rotative. Enfin, nous avons défini une variable visible
dans les data
du composant Vue pour déterminer si la couche de chargement doit être affichée. #🎜🎜##🎜🎜#Étape 3 : Utiliser le chargement dans le composant#🎜🎜##🎜🎜#Maintenant que nous avons implémenté un composant de chargement de base et un plug-in Vue, nous devons les utiliser dans le composant Vue . #🎜🎜##🎜🎜#Tout d'abord, introduisez le plug-in Vue qui vient d'être créé dans le composant Vue, et ajoutez le composant de chargement au composant actuel : #🎜🎜#rrreee#🎜🎜#Dans le code ci-dessus, nous introduisons d'abord le précédent Créez le plug-in Vue LoadingPlugin
, puis utilisez l'attribut components
pour ajouter le composant de chargement au composant actuel. Dans la méthode Mounted()
, nous attribuons l'instance du composant de chargement à l'attribut $loading
, ce qui nous permet d'appeler plus facilement les méthodes show et hide du composant actuel pour afficher et masquer l'effet de chargement. #🎜🎜##🎜🎜#Enfin, dans la méthode fetchData(), nous pouvons appeler this.$loading.show()
pour afficher l'effet de chargement. Une fois les données chargées, appelez 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)

L'option Watch dans Vue.js permet aux développeurs d'écouter des modifications de données spécifiques. Lorsque les données changent, regardez déclenche une fonction de rappel pour effectuer des vues de mise à jour ou d'autres tâches. Ses options de configuration incluent immédiatement, qui spécifie s'il faut exécuter un rappel immédiatement, et profond, ce qui spécifie s'il faut écouter récursivement les modifications des objets ou des tableaux.

Il existe trois façons de se référer aux fichiers JS dans Vue.js: spécifiez directement le chemin à l'aide du & lt; script & gt; étiqueter;; importation dynamique à l'aide du crochet de cycle de vie monté (); et l'importation via la bibliothèque de gestion de l'État Vuex.

Vous pouvez ajouter une fonction au bouton VUE en liant le bouton dans le modèle HTML à une méthode. Définissez la logique de la fonction de méthode et d'écriture dans l'instance Vue.

L'utilisation de bootstrap dans vue.js est divisée en cinq étapes: installer bootstrap. Importer un bootstrap dans main.js. Utilisez le composant bootstrap directement dans le modèle. Facultatif: style personnalisé. Facultatif: utilisez des plug-ins.

Vue.js dispose de quatre méthodes pour revenir à la page précédente: $ router.go (-1) $ router.back () utilise & lt; router-link to = & quot; / & quot; Composant Window.History.back (), et la sélection de la méthode dépend de la scène.

Implémentez les effets de défilement marquee / texte dans VUE, en utilisant des animations CSS ou des bibliothèques tierces. Cet article présente comment utiliser l'animation CSS: créer du texte de défilement et envelopper du texte avec & lt; div & gt;. Définissez les animations CSS et défini: caché, largeur et animation. Définissez les images clés, Set Transforment: Translatex () au début et à la fin de l'animation. Ajustez les propriétés d'animation telles que la durée, la vitesse de défilement et la direction.

Dans vue.js, le chargement paresseux permet de charger dynamiquement les composants ou les ressources, en réduisant le temps de chargement des pages initiales et en améliorant les performances. La méthode de mise en œuvre spécifique comprend l'utilisation de & lt; keep-alive & gt; et & lt; composant est & gt; composants. Il convient de noter que le chargement paresseux peut provoquer des problèmes de FOUC (écran d'éclat) et ne doit être utilisé que pour les composants qui nécessitent un chargement paresseux pour éviter les frais généraux de performances inutiles.

Vous pouvez interroger la version Vue en utilisant Vue Devtools pour afficher l'onglet Vue dans la console du navigateur. Utilisez NPM pour exécuter la commande "NPM List -g Vue". Recherchez l'élément VUE dans l'objet "dépendances" du fichier package.json. Pour les projets Vue CLI, exécutez la commande "Vue --version". Vérifiez les informations de la version dans le & lt; script & gt; Tag dans le fichier html qui fait référence au fichier VUE.
