import { createSignal } from 'solid-js';
export default function Signup() {
const [username, setUsername] = createSignal('');
const [password, setPassword] = createSignal('');
const [email, setEmail] = createSignal('');
const [error, setError] = createSignal('');
function signup(e: MouseEvent) {
e.preventDefault();
console.table({
'username': username(),
'password': password(),
'email': email(),
});
fetch(
"/api/v1/user/signup",
{
method: "post",
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
//make sure to serialize your JSON body
body: JSON.stringify({
username: username(),
password: password(),
})
})
.then((response) => {
if (response.status === 400) {
error.value = 'Bad request signing up'
}
if (response.status === 200 || response.status === 201) {
console.log('success response')
console.log(response)
}
console.log('response')
console.log(response)
});
return false;
}
return (
<form>
<input placeholder="username" value={username()} onInput={(e) => { setUsername(e.target.value); }}></input>
<input placeholder="password" type="password" value={password()} onInput={(e) => { setPassword(e.target.value); }}></input>
<input placeholder="email (optional)" value={email()} onInput={(e) => { setEmail(e.target.value); }}></input>
<button onClick={signup}>Signup</button>
<Show when={error() != ""}>
<p style='color:red;'>error</p>
</Show>
</form>
);
}