Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗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 файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу