Comment changer d'onglet de vue

PHPz
Libérer: 2023-03-31 15:40:04
original
1674 Les gens l'ont consulté

Dans Vue.js, utilisez le changement d'onglet pour naviguer facilement entre différents contenus. Les onglets se composent généralement de panneaux d'en-tête et de contenu, et les utilisateurs peuvent sélectionner différents panneaux en sélectionnant l'en-tête. Dans Vue.js, nous pouvons utiliser la directive v-if et l'attribut isActive pour implémenter le changement d'onglet. Voici un exemple de composant d'onglet de base :

<template>
  <div>
    <ul>
      <li v-for="(tab, index) in tabs" :key="index" :class="{ active: tab.isActive }" @click="selectedTab = tab">
        {{ tab.name }}
      </li>
    </ul>

    <div v-for="(tab, index) in tabs" :key="index" v-if="tab.isActive">
      {{ tab.content }}
    </div>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        tabs: [
          { name: 'Tab 1', content: 'Content for Tab 1', isActive: true },
          { name: 'Tab 2', content: 'Content for Tab 2', isActive: false },
          { name: 'Tab 3', content: 'Content for Tab 3', isActive: false }
        ]
      }
    },
    
    computed: {
      selectedTab() {
        return this.tabs.find(tab => tab.isActive);
      }
    },
    
    methods: {
      selectTab(tab) {
        this.tabs.forEach(tab => tab.isActive = false);
        tab.isActive = true;
      }
    }
  }
</script>
Copier après la connexion

Dans le code ci-dessus, nous définissons d'abord un tableau tabs contenant les informations de l'onglet. Chaque onglet a un nom, un contenu et une valeur booléenne isActive pour déterminer si l'onglet est sélectionné. Nous définissons également un attribut calculé selectedTab, qui est utilisé pour obtenir l'objet onglet actuellement sélectionné.

Ensuite, dans le modèle, nous utilisons la directive v-for pour afficher les en-têtes de tous les onglets et déterminer si l'onglet actuel est sélectionné en fonction de la propriété isActive. Nous avons également ajouté un écouteur d'événement @click à l'élément d'en-tête, qui appelle la méthode selectTab et transmet l'objet onglet actuel en tant que paramètre.

Dans la section du panneau de contenu, nous utilisons à nouveau la directive v-for pour restituer le contenu de tous les onglets, et utilisons la directive v-if pour déterminer si le panneau actuel doit être affiché en fonction de l'attribut isActive.

Enfin, dans l'objet méthodes, nous définissons la méthode selectTab pour mettre à jour le statut de l'onglet lorsque l'utilisateur clique sur l'en-tête de l'onglet. Cette méthode définit d’abord la propriété isActive de tous les onglets sur false, puis définit la propriété isActive de l’onglet sélectionné sur true.

En utilisant le code ci-dessus, vous pouvez rapidement implémenter un composant d'onglet, mais il ne s'agit que d'une implémentation de base, vous pouvez le modifier et l'étendre en fonction de vos propres besoins, comme l'ajout d'effets d'animation, de contenu d'emplacement, etc.

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!