Basic login

This commit is contained in:
2026-01-03 00:24:24 +02:00
parent 978965b282
commit 927a6ccd80
9 changed files with 119 additions and 226 deletions
+47
View File
@@ -0,0 +1,47 @@
<script setup>
import {ref} from "vue";
import {$user} from "./users.js";
const formData = ref({username: '', password: ''})
async function formSubmit() {
const url = `${import.meta.env.PUBLIC_SERVER_URL}/login`
const response = await fetch(
url,
{
method: 'POST',
mode: 'cors',
body: JSON.stringify(formData.value),
headers: {'Content-Type': 'application/json'}
}
)
if(response.status === 200) {
const responseData = await response.json()
console.log(responseData)
$user.set(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>