Komponentti tiedon lisäämiseen Vue:ssa

Toteutetaan nyt lomake uusien käyttäjien lisäämiseen. Teemme tästä lomakkeesta erillisen komponentin. Aloitetaan toteutus. Aluksi vanhemmakomponentissa teemme menetelmän käyttäjän lisäämiseksi:

App.vuemethods: {
  add(name, surn) {
    let id = this.users.length + 1;
    
    this.users.push({
      id,
      name,
      surn
    });
  }
}

Vanhemman komponentin näkymässä liitämme lapsikomponentin:

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

Lapsikomponentissa luomme ominaisuudet syötekenttien hallintaan:

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

Lapsikomponentissa teemme menetelmän tietojen tallentamiseen:

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

Luodaan lapsikomponentin näkymät:

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

Toteuta lomake uuden työntekijän lisäämiseen.