


Explication détaillée du processus d'implémentation du composant barre de pagination dans le document Vue
Vue, en tant que framework JavaScript populaire, doit souvent utiliser la fonction de pagination pendant le développement. La documentation Vue fournit un composant de barre de pagination, qui offre aux développeurs un moyen pratique et rapide d'implémenter la pagination. Cet article présentera en détail le processus de mise en œuvre du composant barre de pagination.
Tout d’abord, dans la documentation officielle de Vue, on peut retrouver l’implémentation spécifique du composant Pagination. Dans le composant, introduisez d'abord le composant Vue et le style CSS :
<template> <nav> <ul class="pagination"> <li v-if="current_page > 1"> <a href="" aria-label="Previous" @click.prevent="changePage(current_page - 1)"> <span aria-hidden="true">«</span> </a> </li> <li v-for="page in pages" v-bind:class="[ page == current_page ? 'active' : '' ]"> <a href="" @click.prevent="changePage(page)">@{{ page }}</a> </li> <li v-if="current_page < last_page"> <a href="" aria-label="Next" @click.prevent="changePage(current_page + 1)"> <span aria-hidden="true">»</span> </a> </li> </ul> </nav> </template> <style> .pagination li { cursor: pointer; } .pagination li.active span { background-color: #3490dc; color: #fff; border-color: #3490dc; } </style>
Dans ce modèle, nous pouvons voir les points clés suivants :
v Instructions -if
etv-for
: utilisezv-if
pour contrôler si la page précédente et la page suivante sont affichées, et utilisezv-for
Parcourez les numéros de page de pagination.class
绑定:通过v-bind:class
绑定当前页的样式(active)。@click.prevent
指令:通过@click.prevent
监听分页页码的点击事件。{{}}
标记:通过{{}}
标记来显示分页页码。
v-if
和v-for
指令:通过v-if
控制上一页和下一页是否显示,通过v-for
遍历分页页码。下面我们根据这些关键点逐一解析。
前一页和后一页的控制
首先,我们需要根据当前页码数来确定上一页和下一页是否需要显示。根据模板中v-if
的实现,我们可以知道v-if="current_page > 1"
表示当前页码大于1时才显示上一页的按钮。
同理,v-if="current_page < last_page"
表示当前页码小于最大页码时才显示下一页的按钮。
页码的遍历
接下来,我们需要在页面上展示分页的页码列表。根据模板中v-for
的实现,我们可以知道v-for="page in pages"
中的pages
是Vue计算属性(computed)中返回的数组。
这里我们需要计算总共有多少页,以及页码列表中需要展示哪些页码。我们使用Vue计算属性来实现:
computed: { pages: function() { var pages = []; for (var i = this.current_page - this.offset; i <= this.current_page + this.offset; i++) { if (i > 0 && i <= this.last_page) { pages.push(i); } } return pages; } }
其中,pages
是页码列表,current_page
是当前页码,last_page
是最大页码。offset
是偏移量,表示当前页码的左右各展示几个页码。
通过计算,我们得到页码列表中应该展示哪些页码。然后在模板中使用v-for
遍历计算得到的页码,将列表展示在页面上。
样式的绑定
为了让当前页码的样式显得与众不同,我们需要在模板中给当前页加上指定的class。在模板中,我们使用v-bind:class
来实现这个功能。
<li v-for="page in pages" v-bind:class="[ page == current_page ? 'active' : '' ]"> <a href="" @click.prevent="changePage(page)">@{{ page }}</a> </li>
在这段代码中,v-bind:class
绑定了一个数组。数组中有两个元素。第一个是判断当前页码与遍历到的页码是否相等,如果相等,则绑定一个active
的class,表示当前页码。如果不相等,则绑定一个空字符串的class。通过这个方式,我们就可以实现给当前页码绑定指定的样式。
点击事件的监听
当用户点击某一页码时,我们需要获取该页码并进行相应的跳转或者数据请求等操作。在Vue中,我们通过@click.prevent
来注册点击事件并阻止默认行为。
<a href="" @click.prevent="changePage(page)">@{{ page }}</a>
这里的changePage
是一个方法,我们在Vue实例中定义这个方法。
methods: { changePage: function(page) { this.current_page = page; this.$emit('page-changed', page); } }
在这个方法中,我们更新当前页码并触发(emit)一个自定义事件page-changed
class
liaison : lie le style de la page actuelle (active) via v-bind:class
. Commande
@click.prevent
: utilisez @click.prevent
pour surveiller l'événement de clic du numéro de page de pagination. Balise
{{}}
: utilisez la balise {{}}
pour afficher les numéros de page de pagination.
Analysons ces points clés un par un. Contrôle des pages précédentes et suivantes#🎜🎜##🎜🎜#Tout d'abord, nous devons déterminer si la page précédente et la page suivante doivent être affichées en fonction du numéro de page actuel. Selon l'implémentation de v-if
dans le template, on peut savoir que v-if="current_page > 1"
signifie que le bouton de la page précédente sera affiché uniquement lorsque le numéro de page actuel est supérieur à 1. #🎜🎜##🎜🎜#De même, v-if="current_page < last_page"
signifie que le bouton de la page suivante sera affiché uniquement lorsque le numéro de page actuel est inférieur au numéro de page maximum. #🎜🎜##🎜🎜#Parcours des numéros de page#🎜🎜##🎜🎜#Ensuite, nous devons afficher la liste des numéros de page paginés sur la page. D'après l'implémentation de v-for
dans le modèle, nous pouvons savoir que pages
dans v-for="page in pages"
est un Attribut calculé de Vue ( calculé). #🎜🎜##🎜🎜#Ici, nous devons calculer le nombre de pages au total et quels numéros de page doivent être affichés dans la liste des numéros de page. Nous utilisons les propriétés calculées de Vue pour y parvenir : #🎜🎜#rrreee#🎜🎜#Parmi eux, pages
est une liste de numéros de page, current_page
est le numéro de page actuel, et last_page
est le numéro de page maximum. offset
est le décalage, indiquant le nombre de numéros de page affichés à gauche et à droite du numéro de page actuel. #🎜🎜##🎜🎜#Grâce au calcul, nous obtenons quels numéros de page doivent être affichés dans la liste des numéros de page. Utilisez ensuite v-for
dans le modèle pour parcourir les numéros de page calculés et afficher la liste sur la page. #🎜🎜##🎜🎜#Style contraignant#🎜🎜##🎜🎜#Afin de rendre unique le style du numéro de page actuel, nous devons ajouter la classe spécifiée à la page actuelle dans le modèle. Dans le modèle, nous utilisons v-bind:class
pour implémenter cette fonction. #🎜🎜#rrreee#🎜🎜#Dans ce code, v-bind:class
lie un tableau. Il y a deux éléments dans le tableau. La première consiste à déterminer si le numéro de page actuel est égal au numéro de page parcouru. S'ils sont égaux, liez une classe active
pour représenter le numéro de page actuel. S'il n'est pas égal, liez une classe de chaîne vide. De cette façon, nous pouvons lier le style spécifié au numéro de page actuel. #🎜🎜##🎜🎜#Surveillance des événements de clic#🎜🎜##🎜🎜#Lorsque l'utilisateur clique sur un numéro de page, nous devons obtenir le numéro de page et effectuer les sauts ou requêtes de données correspondants. Dans Vue, nous utilisons @click.prevent
pour enregistrer les événements de clic et empêcher le comportement par défaut. #🎜🎜#rrreee#🎜🎜#Le changePage
ici est une méthode, nous définissons cette méthode dans l'instance Vue. #🎜🎜#rrreee#🎜🎜#Dans cette méthode, nous mettons à jour le numéro de page actuel et déclenchons (émettons) un événement personnalisé page-changed
. Grâce à cet événement personnalisé, nous pouvons écouter l'événement dans le composant parent et implémenter des opérations spécifiques. #🎜🎜##🎜🎜#Résumé#🎜🎜##🎜🎜#Grâce à l'analyse ci-dessus, nous pouvons voir que la mise en œuvre du composant de barre de pagination Vue est relativement simple. Mais en maîtrisant les principes sous-jacents de ce composant, nous pouvons utiliser le framework Vue plus habilement et appliquer la fonction de pagination de manière plus flexible et plus pratique dans le développement réel. #🎜🎜#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)

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.

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.

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.

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.

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.

Le développement multi-pages VUE est un moyen de créer des applications à l'aide du cadre Vue.js, où l'application est divisée en pages distinctes: Maintenance du code: La division de l'application en plusieurs pages peut rendre le code plus facile à gérer et à maintenir. Modularité: chaque page peut être utilisée comme module séparé pour une réutilisation et un remplacement faciles. Routage simple: la navigation entre les pages peut être gérée par une configuration de routage simple. Optimisation du référencement: chaque page a sa propre URL, ce qui aide le référencement.
