diff --git a/src/components/API.js b/src/components/API.js index 483c095aff6df4f533d8fd3e92290f586f9b2d52..104c07a7136d1c8d25ffe859924cea6aed8511e7 100644 --- a/src/components/API.js +++ b/src/components/API.js @@ -14,8 +14,17 @@ function loginAPI ($http, host, data) { }) } +function registerAPI ($http, host, data) { + return $http({ + method: 'post', + url: host + '/users/signup', + data + }) +} + // noinspection JSUnusedGlobalSymbols export default { httpTest, - loginAPI + loginAPI, + registerAPI } diff --git a/src/views/SignUp.vue b/src/views/SignUp.vue index f4e32eeb336394134b1409492310c6cf403a9f73..aea42610f463674d07ab10fa69e0d11143ea2506 100644 --- a/src/views/SignUp.vue +++ b/src/views/SignUp.vue @@ -1,6 +1,88 @@ <template> - <div> - <p>SignUp</p> - <router-link to="/">Go To Main</router-link><br> - </div> + <div id="LogIn"> + <p>Sign Up</p> + <input type="email" required v-model="user_email" placeholder="EMAIL"><br><br> + <input required v-model='user_id' placeholder="ID"><br><br> + <input required v-model='user_name' placeholder="NAME"><br><br> + <input required v-model='user_password' placeholder="PASSWORD"><br><br> + <input required v-model="user_password_confirm" placeholder="PASSWORD CONFIRM"><br><br> + <input type="radio" v-model="user_gender" name="user_gender" value="1">Male + <input type="radio" v-model="user_gender" name="user_gender" value="0">Female<br><br> + <input required v-model='user_phone' placeholder="PHONE"><br><br> + <button v-on:click="register()" id="bu1"> + 가입 + </button> + <br> + <router-link to='/'> + <img id="illu" src="../assets/gotoHome.png"> + </router-link> + </div> </template> +<script> +import API from '../components/API' + +export default { + data () { + return { + user_email: '', + user_id: '', + user_name: '', + user_password: '', + user_password_confirm: '', + user_gender: '', + user_phone: '' + } + }, + methods: { + register () { + const data = { + user_email: this.user_email, + user_id: this.user_id, + user_name: this.user_name, + user_password: this.user_password, + user_gender: this.user_gender, + user_phone: this.user_phone + } + if (!this.validatePassword()) { + alert('패스워드가 다릅니다.') + this.user_password = '' + this.user_password_confirm = '' + return + } + API.registerAPI(this.$http, this.$env.apiUrl, data).then(res => { + console.log(res) + if (res.data.success === true) { + this.$router.push('/') + } + }).catch(err => { + console.log(err) + }) + }, + validatePassword () { + if (this.user_password !== this.user_password_confirm) { + return false + } else { + return true + } + } + } +} +</script> +<style> + #illu, #illu1, #bu1 { + width: 80px; + height: 35px; + } + + #bu1 { + background-color: #ffffff + } + + #LogIn { + border: 5px solid #4cbaa8; + border-radius: 40px; + width: 500px; + padding: 20px 20px; + margin: auto; + } +</style>