Vue實現(xiàn)注冊頁面的用戶交互詳解
更新時間:2023年12月08日 13:51:34 作者:聽風(fēng)與他
這篇文章主要為大家詳細介紹了Vue實現(xiàn)注冊頁面的用戶交互的相關(guān)知識,文中的示例代碼講解詳細,對我們深入掌握vue有一定的幫助,需要的小伙伴可以參考下
Vue代碼
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>用戶注冊</title> <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script> <style> .container { margin:0 auto; margin-top: 70px; text-align: center; width: 300px; } .subTitle { color:gray; font-size: 14px; } .title { font-size: 45px; } .input { width: 90%; } .inputContainer { text-align: left; margin-bottom: 20px; } .subContainer { text-align: left; } .field { font-size: 14px; } .input { border-radius: 6px; height: 25px; margin-top: 10px; border-color: silver; border-style: solid; background-color: cornsilk; } .tip { margin-top: 5px; font-size: 12px; color: gray; } .setting { font-size: 9px; color: black; } .label { font-size: 12px; margin-left: 5px; height: 20px; vertical-align:middle; } .checkbox { height: 20px; vertical-align:middle; } .btn { border-radius: 10px; height: 40px; width: 300px; margin-top: 30px; background-color: deepskyblue; border-color: blue; color: white; } </style> </head> <body> <div class="container" id="Application"> <div class="container"> <div class="subTitle">加入我們,一起創(chuàng)造美好世界</div> <h1 class="title">創(chuàng)建你的賬號</h1> <div v-for="(item, index) in fields" class="inputContainer"> <div class="field">{{item.title}} <span v-if="item.required" style="color: red;">*</span></div> <input v-model="item.model" class="input" :type="item.type" /> <div class="tip" v-if="index == 2">請確認密碼程度需要大于6位</div> </div> <div class="subContainer"> <div class="setting">偏好設(shè)置</div> <input v-model="receiveMsg" class="checkbox" type="checkbox" /><label class="label">接收更新郵件</label> </div> <button @click="createAccount" class="btn">創(chuàng)建賬號</button> </div> </div> <script> const App = { data(){ return{ fields:[ { title:'用戶名', required:true, type:'text', model:''//與輸入框雙向綁定的數(shù)據(jù) }, { title:'郵箱地址', required:false, type:'text', model:''//與輸入框雙向綁定的數(shù)據(jù) },{ title:'密碼', required:true, type:'password', model:''//與輸入框雙向綁定的數(shù)據(jù) } ], receiveMsg:false } }, computed:{ //定義"賬號"計算屬性,獲取值與設(shè)置值時同步映射到data中具體的存儲屬性 name:{ get(){ return this.fields[0].model }, set(value){ this.fields[0].model = value } }, //定義"郵箱"計算屬性,獲取值與設(shè)置值時同步映射到data中具體的存儲屬性 email:{ get(){ return this.fields[1].model }, set(value){ this.fields[1].model = value } }, password:{ get(){ return this.fields[2].model }, set(value){ this.fields[2].model = value } }, }, methods:{ //檢查郵箱格式是否正確 emailCheck(){ var verify = /^\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/; if(!verify.test(this.email)){ return false }else{ return true } }, //模擬業(yè)務(wù)上的注冊操作 createAccount(){ if(this.name.length == 0){ alert('請輸入用戶名') return }else if(this.password.length <= 6){ alert('密碼設(shè)置需要大于6位字符') return }else if(this.email.length > 0 && !this.emailCheck(this.email)){ alert('請輸入正確的郵箱') return } alert('注冊成功') console.log(`name:${this.name}\npassword:${this.password}\nemail:${this.email}\nreceiveMsg:${this.receiveMsg}`) } } } Vue.createApp(App).mount("#Application") </script> </body> </html>
實現(xiàn)效果
控制臺上打印注冊信息
到此這篇關(guān)于Vue實現(xiàn)注冊頁面的用戶交互詳解的文章就介紹到這了,更多相關(guān)Vue注冊頁面用戶交互內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vuex中...mapstate和...mapgetters的區(qū)別及說明
這篇文章主要介紹了vuex中...mapstate和...mapgetters的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08淺談vue 組件中的setInterval方法和window的不同
這篇文章主要介紹了淺談vue 組件中的setInterval方法和window的不同,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07element的表單校驗證件號規(guī)則及輸入“無”的情況校驗通過(示例代碼)
這篇文章主要介紹了element的表單校驗證件號規(guī)則及輸入“無”的情況校驗通過,使用方法對校驗數(shù)據(jù)進行過濾判斷,本文通過示例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧2023-11-11