Files
web/src/components/LoginForm.vue
T
2026-09-07 23:55:57 +03:00

46 lines
974 B
Vue

<script setup>
import {ref} from "vue";
import {saveToken} from "./scripts/load_token.js";
import * as gateway from "./lib/gateway.js";
const formData = ref({username: '', password: ''})
async function formSubmit() {
const response = await gateway.request(
'/login',
{
method: 'POST',
cors: true,
body: JSON.stringify(formData.value)
}
)
if(response.status === 200) {
const responseData = await response.json()
console.log(responseData)
saveToken(responseData)
}
}
</script>
<template>
<form @submit.prevent="formSubmit">
<label>
Username:
<input type="text" name="username" v-model="formData.username">
</label>
<label>
Password:
<input type="password" name="password" v-model="formData.password">
</label>
<div>
<button type="submit">Login</button>
</div>
</form>
</template>
<style>
/* TODO: extract */
label {
display: block;
}
</style>