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> ); }