⊗jsvuPmCmRR 68 of 72 menu

Vue'до компоненттерди реактивдүү өчүрүү

Келгиле, тизмеден бала компоненттерди реактивдүү өчүрүүнү үйрөнөлү. Бул үчүн ар бир бала компонентте атайын баскыч жасайлы. Бул баскычты басканда, октуу чагылдырылат жана ата-эне компонентте берилген бала компонент анын id боюнча өчүрүлөт.

Ишке ашырууга киришөлү. Ата-эне компонентте төмөнкү объекттердин массиви болсун:

data() { return { users: [ { id: 1, name: 'name1', surn: 'surn1' }, { id: 2, name: 'name2', surn: 'surn2' }, { id: 3, name: 'name3', surn: 'surn3' }, ], } }

Ата-эне компонентте колдонуучуну анын id боюнча өчүрүү методуң жазалы:

methods: { remove(id) { this.users = this.users.filter((user) => { return user.id !== id; }) } }

Циклде компоненттерди түзөлү, аларга ат, фамилия, id жана өчүрүү методуң параметр катары берсек:

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

Кирүүчү маалыматты props конфигурациясында жана чагылдырылган окуяны emits конфигурациясында көрсөтөлү:

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

Компоненттин көрүнүшүндө колдонуучунун аты менен фамилиясын көрсөтөлү:

<template> {{ name }} {{ surn }} </template>

Эми өчүрүү үчүн окуя чагылдыруучу баскыч жасайлы. Бул окуянын параметри катары компоненттин id өткөрүлөт. Окуяны кабыл алганда, ата-эне компонент бул колдонуучуну объекттер массивинен өчүрөт жана ал колдонуучулар тизмесинен реактивдүү жоголот.

Ошентип, бул баскычты ишке ашыралы:

<template> {{ name }} {{ surn }} <button @click="$emit('remove', id)"> remove </button> </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 файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу