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 :

App.vuemethods: {
  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 :

App.vue<template>
  <UserForm @add="add" />
</template>

Dans le composant enfant, créons des propriétés pour contrôler les inputs :

components/UserForm.vuedata() {
  return {
    newName: '',
    newSurn: '',
  }
}

Dans le composant enfant, créons une méthode pour sauvegarder les données :

components/UserForm.vuemethods: {
  save() {
    this.$emit('add', this.newName, this.newSurn);
  }
}

Créons les vues du composant enfant :

components/UserForm.vue<template>
  <input v-model="newName">
  <input v-model="newSurn">
  
  <button @click="save">
    save
  </button>
</template>
Задание 1

Implémentez un formulaire pour ajouter un nouvel employé.