⊗jsvuPmCmRE 69 of 72 menu

Vue-те компонент деректерін реактивті түрде өңдеу

Енді біздің бала компоненттердің деректерін өңдеуді жүзеге асырайық. Алдымен ата компонентте пайдаланушыны оның id бойынша өзгерту әдісін жасайық:

methods: { change(id, name, surn) { this.users = this.users.map((user) => { if (user.id === id) { user.name = name; user.surn = surn; } return user; }); } }

Цикл ішінде компоненттерді жасайық, оларға параметр ретінде ат, тегі, id және өзгерту әдісін бере отырып:

<template> <User v-for ="user in users" :id ="user.id" :name ="user.name" :surn ="user.surn" :key ="user.id" @change="change" /> </template>

Бала компонентінің конфигурациясында emits шығарылатын оқиғаны көрсетейік:

props: { id: Number, name: String, surn: String, }, emits: ['change'],

Енді бала компонентінде компоненттің режимін, көрсету немесе өңдеу, белгілейтін қасиет жасайық:

data() { return { isEdit: false, } }

Сондай-ақ өңдеу үшін енгізу өрістерінің жұмысын қолдауға арналған қасиеттер жасайық:

data() { return { isEdit: false, newName: '', newSurn: '', } }

Бұл қасиеттердің бастапқы мәндері пропстерден алынатындай етейік:

data() { return { isEdit: false, newName: this.name, newSurn: this.surn, } }

Өңдеу режимін іске қосатын әдіс жасайық:

methods: { edit() { this.isEdit = true; } }

Өңделген деректерді сақтайтын, сонымен бірге өңдеу режимін өшіретін әдіс жасайық:

methods: { save() { this.isEdit = false; this.$emit('change', this.id, this.newName, this.newSurn); } }

Бала компонентінің көрінісін жасайық:

<template> <template v-if="!isEdit"> {{ name }} {{ surn }} <button @click="edit"> edit </button> </template> <template v-else> <input v-model="newName"> <input v-model="newSurn"> <button @click="save"> save </button> </template> </template>

Employee компонентінің деректерін өңдеуді жүзеге асырыңыз.

Қазақ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართული한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Біз сайттың жұмысы, аналитика және персонализация үшін cookie файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау