Files
don_confiao_frontend/src/components/Login.vue

43 lines
1.1 KiB
Vue

<script setup>
import { ref } from 'vue';
import AuthService from '@/services/auth';
import { inject } from 'vue';
const username = ref('');
const password = ref('');
const error = ref('');
async function login() {
try {
await AuthService.login({ username: username.value, password: password.value });
// opcional: redirigir al dashboard
} catch (e) {
error.value = e.message;
}
}
// ejemplo de llamada a clientes (requiere token)
const api = inject('api');
async function loadCustomers() {
try {
const data = await api.getCustomers();
console.log(data);
} catch (e) {
console.error(e);
}
}
</script>
<template>
<h1>Login</h1>
<v-form @submit.prevent="login">
<v-text-field v-model="username" label="Usuario" required />
<v-text-field v-model="password" label="Contraseña" type="password" required />
<v-btn type="submit">Entrar</v-btn>
<v-alert v-if="error" type="error">{{ error }}</v-alert>
</v-form>
<v-btn @click="loadCustomers">Cargar clientes</v-btn>
</template>