Creo un sistema de registro (Laravel + Vuetify), por lo que me gustaría preguntar: ¿cómo obtener el ID de usuario de un objeto (API) y ponerlos en la entrada?
<template> <v-text-field v-model="debugItem.extra1_int" :counter="250" label="extra1_int" hint="userID" type="number" clearable> </v-text-field> </template> <script> export default { data() { return { debugItem: {}, /* store new debugItem */ user: '', } }, mounted() { this.getUser(); this.debugItem.extra1_int = ***how to put here userID?***; }, methods: { getUser() { axios.get('/user') .then(response => (this.user = response.data)) .catch(error => console.log(error)); }, addDebugItem() { /* store new debugItem */ this.axios .post('/api/debugs', this.debugItem) .then(response => ( this.$router.push({name: 'indexDebugs'}) )) .catch(err => console.log(err)) .finally(() => this.loading = false) } } } </script>Método getUser() http://127.0.0.1:8000/user return json-object del usuario registrado:
{ "id": 119, "name": "Johan", "email": "Johan@mail.com", "email_verified_at": null, "is_active": 1, "created_at": "2022-05-09T14:24:48.000000Z", "updated_at": "2022-05-09T14:24:48.000000Z" }Gracias.
<template> <v-text-field v-model="debugItem.userId" :counter="250" label="extra1_int" hint="userID" type="number" clearable> </v-text-field> </template> <script> export default { data() { return { debugItem: {userId: null}, /* store new debugItem */ user: '', } }, mounted() { this.getUser(); this.debugItem.userId = this.user.id }, methods: { getUser() { axios.get('/user') .then(response => (this.user = response.data)) .catch(error => console.log(error)); }, addDebugItem() { /* store new debugItem */ this.axios .post('/api/debugs', this.debugItem) .then(response => ( this.$router.push({name: 'indexDebugs'}) )) .catch(err => console.log(err)) .finally(() => this.loading = false) } } } </script>Mi sugerencia, en lugar de asignar un valor a this.debugItem.extra1_int en el gancho de ciclo de vida mounted() . Puede asignarlo en getUser() en caso de éxito de la llamada axios.
data() { return { debugItem: {}, user: '', } }, mounted() { this.getUser(); this.debugItem.extra1_int = ***how to put here userID?***; ❌ }, methods: { getUser() { axios.get('/user') .then(response => { this.user = response.data; this.debugItem['extra1_int'] = this.user.id; ✅ }) .catch(error => console.log(error)); } }