用vue實現註冊頁效果 vue實現短信驗證碼登錄
本文實例為大傢分享瞭vue實現註冊頁效果 的具體代碼,供大傢參考,具體內容如下
一、實現效果圖
二、實現代碼
1、實現頭部
<template> <div class="box"> <div class="box1"> <span class="iconfont icon-zuojiantou back" @click="goBack"></span> </div> <div class="box6"> <b>手機號註冊</b> </div> </div> </template> <script> export default { name: "Top", methods: { goBack() { this.$router.push("/Login"); }, }, }; </script> <style scoped> .box1 { width: 100%; height: 0.5rem; margin-bottom: 0.19rem; } span { font-size: 0.18rem; line-height: 0.5rem; font-size: 0.2rem; } .back { font-size: 0.25rem; } .box6 { width: 100%; height: 0.66rem; margin: auto; } b { font-size: 0.24rem; font-weight: normal; } p { font-size: 0.13rem; color: gray; margin-top: 0.11rem; } </style>
2、實現註冊內容
<template> <div class="box"> <div class="box1"> <div class="phone-container"> <span>+86</span> <input class="userphone" type="" v-model="usernum" placeholder="請輸入手機號碼" /> </div> </div> <div class="box2"> <h3 @click="toSendCode">同意協議並註冊</h3> </div> <div class="box3"> <van-checkbox v-model="checked"> 已閱讀並同意以下協議:<b >淘寶平臺服務協議、隱私權政策、法律聲明、支付寶服務協議、天翼賬號認證服務條款</b > </van-checkbox> </div> </div> </template> <script> import axios from "axios"; import Vue from "vue"; import { Checkbox, Toast } from "vant"; Vue.use(Checkbox); Vue.use(Toast); export default { name: "Num", data: function () { return { usernum: "", code: "", checked: false, }; }, methods: { // 驗證手機號 checkPhone(phone) { let reg = /^1[3|4|5|7|8][0-9]{9}$/; return reg.test(phone); }, toSendCode() { if (this.checked) { if (this.checkPhone(this.usernum)) { axios({ url: `/auth/code/?phone=${this.usernum}`, }).then((res) => { console.log(res); if (res.status == 200) { localStorage.setItem("userPhone", this.usernum); Toast("驗證碼發送成功"); this.$router.push("/inputCode"); } }); } else { Toast("請檢查您的手機號"); } } else { Toast("請先勾選用戶協議"); } }, }, }; </script> <style scoped> .box1 { width: 100%; height: 0.7rem; } .box1 b { margin-top: 0.25rem; font-weight: normal; } .phone-container { width: 100%; padding: 0.1rem 0; margin-bottom: 0.4rem; position: relative; } .phone-container > span { position: absolute; font-size: 0.16rem; color: #666; top: 0.21rem; } input { border: none; outline: none; } input::-webkit-input-placeholder { font-size: 0.2rem; color: rgb(216, 214, 214); } .userphone { display: block; width: 100%; height: 0.4rem; box-sizing: border-box; padding: 0 0.3rem; padding-left: 0.4rem; font-size: 0.2rem; border-bottom: 0.01rem solid #eee; } .box2 { width: 100%; height: 0.5rem; margin-top: 0.2rem; } .box2 h3 { width: 100%; height: 0.4rem; background-color: yellow; border-radius: 0.15rem; font-size: 0.18rem; text-align: center; line-height: 0.3rem; margin-top: 0.1rem; font-weight: 600; line-height: 0.4rem; letter-spacing: 0.02rem; color: rgba(87, 42, 42, 0.623); } .box3 { width: 100%; height: 0.3rem; margin-top: 3.4rem; font-size: 0.12rem; } .box3 b { font-weight: normal; color: deepskyblue; } </style>
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。