Untitled
unknown
plain_text
2 years ago
4.1 kB
4
Indexable
<template> <div data-theme="light"> <form action="" method="post" @submit.prevent="register"> <div class="container mx-auto flex flex-col items-center justify-center mt-16" > <div class="w-3/4 flex justify-center gap-16"> <div class="w-3/4 mx-auto border border-gray-300 p-4"> <h1 class="text-4xl font-bold text-center mb-4">SPDN</h1> <h3 class="text-2xl font-semibold text-center mb-1"> Daftar Akun Baru </h3> <p class="text-center">Masukkan Data Diri Anda</p> <InputForm inputId="phoneNumber" labelText="Nomor Telepon" inputType="number" placeholderText="08xxxxxxx" v-model="phoneNumber" :isRequired="true" /> <InputForm inputId="email" labelText="Email" inputType="email" placeholderText="johnDoe@domain.com" v-model="email" :isRequired="true" /> <InputForm inputId="fullName" labelText="Nama Lengkap" inputType="text" placeholderText="John Doe" v-model="fullName" :isRequired="true" /> <InputForm inputId="password" labelText="Kata Sandi" inputType="password" placeholderText="********" v-model="password" :isRequired="true" /> <InputForm inputId="confirmPassword" labelText="Ulangi Kata Sandi" inputType="password" placeholderText="********" v-model="confirmPassword" :isRequired="true" /> <div class="flex justify-between py-4"> <div class="form-control"> <label class="label cursor-pointer"> <input type="checkbox" checked="checked" class="checkbox" /> <span class="label-text ps-4 text-md" >Setuju dengan persyaratan</span > </label> </div> </div> <button class="btn w-full bg-primary text-secondary hover:bg-secondary hover:text-primary" type="submit" > Daftar </button> <p class="text-center mt-3"> Sudah punya akun ? <nuxt-link to="/auth/login">Masuk</nuxt-link> </p> </div> </div> </div> </form> <p class="text-center mt-4 text-sm text-red-600" v-if="error"> {{ error }} </p> </div> </template> <script> import InputForm from "~/components/FormInput/InputForm.vue"; export default { name: "register", layout: "auth", components: { InputForm, }, data() { return { phoneNumber: "", email: "", fullName: "", password: "", confirmPassword: "", isRequired: true, error: "", }; }, methods: { async register(e) { e.preventDefault(); this.error = ""; if (this.password !== this.confirmPassword) { this.error = "Password tidak sama"; return; } try { const userData = { phone_number: this.phoneNumber, email: this.email, name: this.fullName, password: this.password, confPassword: this.confirmPassword, }; const response = await this.$axios.post("/user/registration", userData); if (response.data.error) { this.error = response.data.message; return; } console.log(response.data); alert("Registrasi Berhasil"); // this.$router.push("/auth/login"); } catch (err) { alert("Registrasi gagal! Silahkan coba lagi."); } }, }, }; </script>
Editor is loading...