Maison >interface Web >Questions et réponses frontales >Comment obtenir la valeur d'une vue de table personnalisée
Comment obtenir la valeur d'une table personnalisée dans Vue
Dans Vue.js, la table est rendue à l'aide de la boucle d'instruction v-for. Une fois que des données personnalisées existent dans un tableau (telles que des zones de liste déroulante, des boutons radio, des cases à cocher, etc.), vous avez besoin d'un moyen pratique pour obtenir les valeurs de ces données personnalisées à partir du tableau. Dans cet article, nous expliquerons comment obtenir la valeur d'une table personnalisée dans Vue.js.
Tout d'abord, nous devons comprendre le cycle de vie des composants Vue.js, car les tables personnalisées contiennent généralement un composant. Le composant Vue.js possède 9 fonctions de cycle de vie, qui sont :
beforeCreate,created, beforeMount, Mounted, beforeUpdate,mis à jour, beforeDestroy, destroy, errorCaptured
Parmi elles, nous utiliserons les deux fonctions de cycle de vie créées et montées pour implémentez des valeurs de table personnalisées.
created() { this.headers = [ { text: 'Name', value: 'name' }, { text: 'Age', value: 'age' }, { text: 'Gender', value: 'gender' }, { text: 'Hobby', value: 'hobby' } ] this.items = [ { name: 'John', age: 25, gender: 'Male', hobby: 'Basketball' }, { name: 'Mary', age: 30, gender: 'Female', hobby: 'Singing' }, { name: 'David', age: 28, gender: 'Male', hobby: 'Dancing' }, { name: 'Rachel', age: 22, gender: 'Female', hobby: 'Reading' } ] }
mounted() { this.getSelectedValues = function() { let items = this.$refs.table.getSelectedItems() let selectedValues = [] for (let item of items) { selectedValues.push(item.hobby) } return selectedValues } }
Dans ce code, nous appelons la fonction $refs.table.getSelectedItems() pour obtenir les éléments de données sélectionnés. Nous utilisons ensuite une boucle for pour parcourir les éléments de données sélectionnés et ajouter leurs valeurs de propriété de passe-temps au tableau selectedValues, et enfin renvoyer le tableau.
<v-data-table :headers="headers" :items="items" ref="table"> <template v-slot:item.hobby="{ item }"> <v-select v-model="item.hobby" :items="hobbies" ref="hobby" label="Hobby"></v-select> </template> <template v-slot:body> <tbody> <tr v-for="(item, index) in items" :key="index" v-bind:style="[ index % 2 == 0 ? { background: '#f2f2f2' } : {} ]"> <td>{{ item.name }}</td> <td>{{ item.age }}</td> <td>{{ item.gender }}</td> <td><v-select v-model="item.hobby" :items="hobbies" label="Hobby"></v-select></td> </tr> </tbody> </template> </v-data-table>
Dans cet exemple, nous avons utilisé le composant v-select comme données personnalisées. Pour référencer un élément DOM, vous devez ajouter l'attribut ref à l'élément v-select. Nous avons également montré comment ajouter une colonne v-select au tableau. Enfin, nous avons ajouté une directive v-model à l'élément v-select afin que la sélection de l'utilisateur puisse être liée dans les deux sens.
Résumé
Les tableaux personnalisés dans Vue.js peuvent nous donner plus de flexibilité pour présenter et traiter plus de données et d'informations. Grâce aux fonctionnalités de Vue.js, nous pouvons facilement obtenir et traiter les données de tables personnalisées. Dans cet article, nous utilisons les deux fonctions de cycle de vie créées et montées pour obtenir la valeur de la table personnalisée. Nous avons également expliqué comment utiliser l'attribut $refs pour référencer des éléments DOM.
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!