¿Cómo puedo obtener solo el campo de una tabla vuetify para publicar en axios? Tengo una tabla como muestro en el siguiente código.
<div id="app"> <v-app id="inspire"> <v-card> <v-card-title> <v-text-field v-model="search" append-icon="mdi-magnify" label="Search" single-line hide-details ></v-text-field> </v-card-title> <v-data-table :headers="headers" :items="students" :search="search" > <template v-slot:item.status="{ item }"> <v-btn v-if="item.status" @click="add(item)">Add</v-btn> <v-btn v-else disabled>Temporarily no access</v-btn> </template> </v-data-table> </v-card> </v-app> </div>y del script tengo el siguiente código
const app = new Vue({ el: '#app', vuetify: new Vuetify(), data() { return { search: '', headers: [ { text: 'Number list', align: 'start', value: 'id'}, { text: 'Name', align: 'start', value: 'name'}, { text: 'Options', value: 'status' } ], students: [ { id: 1, name: pedro, status: activo, }, { id: 2, name: juan, status: activo, }, { id: 3, name: jose, status: activo, }, ] }; }, methods: { add (item) { axios.post('http://localhost/list?id=' + item.id) .then(response => { this.response = response }).catch(e => { console.log(e) }); }, } });Lo que quiero hacer es que cuando se hace clic, solo envíe la identificación por publicación con axios, pero cuando hago clic, aparece un error en la consola que dice que el elemento no está definido, ese es mi error principal, y como pueden ver, yo Necesito que sea primero verificar que el estado del estudiante es activo. A continuación, también agrego una imagen de la tabla generada para mayor referencia.
Editar
se me olvidó poner
@click="add(item)"pero sigue sin funcionar, ya no sale ni un error en la consola aunque tenga el catch
Probar:
<v-btn v-if="item.estado" @click="add(item)">Add</v-btn> Intente 2: verifique primero si item se está procesando correctamente agregando la siguiente línea. Tal vez esto ayude a rastrear el problema.
<template v-slot:item.status="{ item }"> <p>Debug item text: {{item}}</p> <v-btn v-if="item.status" @click="add(item)">Add</v-btn> <v-btn v-else disabled>Temporarily no access</v-btn> </template>