⊗jsvuPmFmAOOR 55 of 72 menu

Botón para eliminar de un array de objetos en Vue

Ahora implementemos un botón para eliminar datos de un array de objetos. Empecemos con la implementación. Supongamos que tenemos el siguiente array:

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

Mostremos el contenido del array en forma de lista:

<template> <ul> <li v-for="user in users" :key="user.id"> {{ user.name }} {{ user.surn }} </li> </ul> </template>

Hagamos en cada elemento de la lista un botón para eliminar. En este botón vincularemos un método, cuyo parámetro pasaremos el id del elemento del array que vamos a eliminar:

<template> <ul> <li v-for="user in users" :key="user.id"> {{ user.name }} {{ user.surn }} <button @click="removeItem(user.id)">eliminar</button> </li> </ul> </template>

Implementemos la eliminación en el método removeItem:

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

Se da el siguiente array con datos de trabajadores:

data() { return { users: [ { id: 1, name: 'name1', salary: 100, age: 30, }, { id: 2, name: 'name2', salary: 200, age: 40, }, { id: 3, name: 'name3', salary: 300, age: 50, }, ], } }

Muestre los datos de los trabajadores en forma de tabla HTML. Haga una columna con enlaces para eliminar trabajadores.

msitazkacs