Composant pour ajouter des données dans Vue
Implémentons maintenant un formulaire pour ajouter de nouveaux utilisateurs. Nous ferons ce formulaire sous la forme d'un composant séparé. Passons à la mise en œuvre. Pour commencer, dans le composant parent, créons une méthode pour ajouter un utilisateur :
methods: {
add(name, surn) {
let id = this.users.length + 1;
this.users.push({
id,
name,
surn
});
}
}
Dans la vue du composant parent, connectons le composant enfant :
<template>
<UserForm @add="add" />
</template>
Dans le composant enfant, créons des propriétés pour contrôler les inputs :
data() {
return {
newName: '',
newSurn: '',
}
}
Dans le composant enfant, créons une méthode pour sauvegarder les données :
methods: {
save() {
this.$emit('add', this.newName, this.newSurn);
}
}
Créons les vues du composant enfant :
<template>
<input v-model="newName">
<input v-model="newSurn">
<button @click="save">
save
</button>
</template>
Implémentez un formulaire pour ajouter un nouvel employé.