⊗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šuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј