Maison interface Web Voir.js Comment implémenter la pagination et l'affichage des données dans Vue

Comment implémenter la pagination et l'affichage des données dans Vue

Oct 15, 2023 pm 05:46 PM
vue (vuejs) affichage des données Pagination

Comment implémenter la pagination et laffichage des données dans Vue

Vue est un framework JavaScript frontal populaire largement utilisé dans le développement Web. Ses fonctionnalités basées sur les données et les composants permettent aux développeurs de traiter les données et de créer des interfaces utilisateur interactives plus facilement.

Dans le développement réel, nous rencontrons souvent des situations où une grande quantité de données doit être affichée dans des pages. Cet article expliquera comment utiliser le framework Vue pour implémenter la pagination et l'affichage des données, et donnera des exemples de code spécifiques.

1. Préparation
Tout d'abord, vous devez importer le framework Vue dans le projet. Il peut être introduit via CDN ou installé à l'aide de npm, puis importé via l'instruction d'importation.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Vue Pagination</title>
</head>
<body>
  <div id="app">
    <!-- 数据列表 -->
    <ul>
      <li v-for="item in currentPageData" :key="item.id">{{ item.name }}</li>
    </ul>
    <!-- 分页器 -->
    <div>
      <button @click="prevPage">上一页</button>
      <span>{{ currentPage }}</span>
      <button @click="nextPage">下一页</button>
    </div>
  </div>

  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  <script>
    // 创建Vue实例
    new Vue({
      el: '#app',
      data: {
        currentPage: 1, // 当前页码
        pageSize: 10, // 每页显示的数据条数
        dataList: [], // 数据列表
      },
      computed: {
        // 计算属性,根据当前页码和每页显示的数据条数,计算当前页显示的数据
        currentPageData() {
          const start = (this.currentPage - 1) * this.pageSize;
          const end = start + this.pageSize;
          return this.dataList.slice(start, end);
        },
      },
      methods: {
        // 上一页
        prevPage() {
          if (this.currentPage > 1) {
            this.currentPage--;
          }
        },
        // 下一页
        nextPage() {
          if (this.currentPage < this.totalPages) {
            this.currentPage++;
          }
        },
      },
      created() {
        // ajax请求获取数据
        // 这里使用setTimeout模拟异步请求
        setTimeout(() => {
          this.dataList = [
            { id: 1, name: '数据1' },
            { id: 2, name: '数据2' },
            // ...
            { id: 100, name: '数据100' },
          ];
        }, 1000);
      },
    });
  </script>
</body>
</html>
Copier après la connexion

Le code ci-dessus est un exemple de la fonction de pagination la plus basique. Dans l'instance Vue, nous définissons certaines données et méthodes pour contrôler la logique de pagination.

  1. Dans l'attribut data, trois variables sont définies : currentPage (numéro de la page actuelle), pageSize (nombre d'éléments de données affichés sur chaque page) et dataList (liste de données).
  2. Calculez currentPageData en fonction de currentPage et pageSize via des attributs calculés, qui sont les données à afficher sur la page actuelle.
  3. Définissez deux méthodes prevPage et nextPage, qui sont utilisées respectivement pour accéder à la page précédente et à la page suivante. Parmi ces deux méthodes, jugez d’abord pour vous assurer que le nombre total de pages n’est pas dépassé.
  4. Dans la fonction hook créée, une requête asynchrone est simulée et les données sont enregistrées dans la dataList avec un délai de 1 seconde via le minuteur setTimeout.
  5. Dans le modèle, utilisez l'instruction v-for pour boucler les données dans currentPageData et utilisez l'instruction v-bind pour associer l'attribut key.
  6. La partie paginateur implémente les fonctions « page précédente » et « page suivante » via des boutons et des événements liés, et affiche le numéro de la page actuelle.

Le code ci-dessus n'implémente que l'affichage de pagination de base. Les projets réels peuvent nécessiter une logique plus complexe, comme passer à une page spécifiée, afficher le nombre total de pages, etc. Mais l'idée de base est la même. En fonction du numéro de page actuel et du nombre de données affichées sur chaque page, les données affichées sur la page actuelle sont calculées.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Comment configurer les crochets de cycle de vie du composant dans Vue Comment configurer les crochets de cycle de vie du composant dans Vue Mar 04, 2025 pm 03:29 PM

Cet article clarifie le rôle de la valeur par défaut de l'exportation dans les composants Vue.js, soulignant qu'il est uniquement pour l'exportation, et non sur la configuration des crochets de cycle de vie. Les crochets de cycle de vie sont définis comme des méthodes dans l'objet Options du composant, leur fonctionnalité Un

Comment configurer la montre du composant dans Vue Export Default Comment configurer la montre du composant dans Vue Export Default Mar 04, 2025 pm 03:30 PM

Cet article clarifie les fonctionnalités de la montre de composante Vue.js lors de l'utilisation de l'exportation par défaut. Il met l'accent sur l'utilisation efficace de la montre grâce à l'observation spécifique à la propriété, à une utilisation judicieuse des options profondes et immédiates et à des fonctions de gestionnaire optimisées. Meilleures pratiques

Qu'est-ce que Vuex et comment l'utiliser pour la gestion de l'État dans les applications VUE? Qu'est-ce que Vuex et comment l'utiliser pour la gestion de l'État dans les applications VUE? Mar 11, 2025 pm 07:23 PM

Cet article explique Vuex, une bibliothèque de gestion de l'État pour Vue.js. Il détaille les concepts de base (état, getters, mutations, actions) et démontre l'utilisation, en mettant l'accent sur ses avantages pour les projets plus importants sur des alternatives plus simples. Débogage et structuri

Comment créer et utiliser des plugins personnalisés dans vue.js? Comment créer et utiliser des plugins personnalisés dans vue.js? Mar 14, 2025 pm 07:07 PM

L'article discute de la création et de l'utilisation des plugins Vue.js personnalisés, y compris les meilleures pratiques de développement, d'intégration et de maintenance.

Comment implémenter des techniques de routage avancées avec le routeur VUE (routes dynamiques, routes imbriquées, gardes de route)? Comment implémenter des techniques de routage avancées avec le routeur VUE (routes dynamiques, routes imbriquées, gardes de route)? Mar 11, 2025 pm 07:22 PM

Cet article explore les techniques avancées du routeur Vue. Il couvre le routage dynamique (utilisant des paramètres), les routes imbriquées pour la navigation hiérarchique et les gardes d'itinéraire pour contrôler l'accès et la récupération des données. Meilleures pratiques pour gérer la route complexe confr

Quelles sont les principales caractéristiques de Vue.js (architecture basée sur les composants, DOM virtuel, liaison réactive des données)? Quelles sont les principales caractéristiques de Vue.js (architecture basée sur les composants, DOM virtuel, liaison réactive des données)? Mar 14, 2025 pm 07:05 PM

Vue.js améliore le développement Web avec son architecture basée sur des composants, son DOM virtuel pour les performances et la liaison des données réactives pour les mises à jour de l'interface utilisateur en temps réel.

Comment configurer VUE CLI pour utiliser différentes cibles de construction (développement, production)? Comment configurer VUE CLI pour utiliser différentes cibles de construction (développement, production)? Mar 18, 2025 pm 12:34 PM

L'article explique comment configurer VUE CLI pour différentes cibles de build, commutation des environnements, optimiser les versions de production et assurer des cartes source dans le développement du débogage.

Comment utiliser Vue avec Docker pour le déploiement conteneurisé? Comment utiliser Vue avec Docker pour le déploiement conteneurisé? Mar 14, 2025 pm 07:00 PM

L'article discute de l'utilisation de Vue avec Docker pour le déploiement, en se concentrant sur la configuration, l'optimisation, la gestion et la surveillance des performances des applications VUE dans les conteneurs.

See all articles