亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼

瀏覽:3日期:2022-09-30 18:37:46

模板1:

vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼

login.vue

<template><p class='login'><el-tabs v-model='activeName' @tab-click='handleClick'><el-tab-pane label='登錄' name='first'><el-form :model='ruleForm' :rules='rules' ref='ruleForm' label- class='demo-ruleForm'><el-form-item label='名稱' prop='name'><el-input v-model='ruleForm.name'></el-input></el-form-item> <el-form-item label='密碼' prop='pass'><el-input type='password' v-model='ruleForm.pass' auto-complete='off'></el-input></el-form-item> <el-form-item><el-button type='primary' @click='submitForm(’ruleForm’)'>登錄</el-button> <el-button @click='resetForm(’ruleForm’)'>重置</el-button></el-form-item></el-form></el-tab-pane> <el-tab-pane label='注冊(cè)' name='second'><register></register></el-tab-pane></el-tabs></p></template> <script>import register from ’@/components/register’; export default {data() {var validatePass = (rule, value, callback) => {if (value === ’’) {callback(new Error(’請(qǐng)輸入密碼’));} else {if (this.ruleForm.checkPass !== ’’) {this.$refs.ruleForm.validateField(’checkPass’);} callback();}}; return {activeName: ’first’,ruleForm: {name: ’’,pass: ’’,checkPass: ’’},rules: {name: [{ required: true, message: ’請(qǐng)輸入您的名稱’, trigger: ’blur’ }, { min: 2, max: 5, message: ’長(zhǎng)度在 2 到 5 個(gè)字符’, trigger: ’blur’ }],pass: [{ required: true, validator: validatePass, trigger: ’blur’ }]}};}, methods: {//選項(xiàng)卡切換handleClick(tab, event) {},//重置表單resetForm(formName) {this.$refs[formName].resetFields();},//提交表單submitForm(formName) {this.$refs[formName].validate(valid => {if (valid) {this.$message({type: ’success’,message: ’登錄成功’});this.$router.push(’home’);} else {console.log(’error submit!!’);return false;}});}},components: {register}};</script> <style lang='scss'>.login {width: 400px;margin: 0 auto;} .el-tabsitem {text-align: center;width: 60px;}</style>

register.vue

//register組件 <template><el-form :model='ruleForm' :rules='rules' ref='ruleForm' label- class='demo-ruleForm'><el-form-item label='用戶名' prop='name'><el-input v-model='ruleForm.name'></el-input></el-form-item><el-form-item label='密碼' prop='pass'><el-input type='password' v-model='ruleForm.pass' auto-complete='off'></el-input></el-form-item><el-form-item label='確認(rèn)密碼' prop='checkPass'><el-input type='password' v-model='ruleForm.checkPass' auto-complete='off'></el-input></el-form-item><el-form-item><el-button type='primary' @click='submitForm(’ruleForm’)'>注冊(cè)</el-button><el-button @click='resetForm(’ruleForm’)'>重置</el-button></el-form-item></el-form></template> <script>export default {data() {var validatePass = (rule, value, callback) => {if (value === ’’) {callback(new Error(’請(qǐng)輸入密碼’));} else {if (this.ruleForm.checkPass !== ’’) {this.$refs.ruleForm.validateField(’checkPass’);}callback();}}; var validatePass2 = (rule, value, callback) => {if (value === ’’) {callback(new Error(’請(qǐng)?jiān)俅屋斎朊艽a’));} else if (value !== this.ruleForm.pass) {callback(new Error(’兩次輸入密碼不一致!’));} else {callback();}}; return {activeName: ’second’,ruleForm: {name: ’’,pass: ’’,checkPass: ’’},rules: {name: [{ required: true, message: ’請(qǐng)輸入您的名稱’, trigger: ’blur’ }, { min: 2, max: 5, message: ’長(zhǎng)度在 2 到 5 個(gè)字符’, trigger: ’blur’ }],pass: [{ required: true, validator: validatePass, trigger: ’blur’ }],checkPass: [{ required: true, validator: validatePass2, trigger: ’blur’ }]}};}, methods: {submitForm(formName) {this.$refs[formName].validate(valid => {if (valid) {this.$message({type: ’success’,message: ’注冊(cè)成功’});// this.activeName: ’first’,} else {console.log(’error submit!!’);return false;}});}, resetForm(formName) {this.$refs[formName].resetFields();}}};</script>

效果圖

vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼

vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼

模板2:

vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼

vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼

login.vue

<template> <el-row type='flex' justify='center'> <el-form ref='formData' :model='formData' :rules='rules' label- @keyup.enter.native='login()'> <el-form-item prop='userName' label='用戶名'><el-input v-model='formData.userName' placeholder='請(qǐng)輸入用戶名' prefix-icon='icon-login_user' clearable></el-input></el-form-item> <el-form-item prop='password' label='密碼'><el-input v-model='formData.password' placeholder='請(qǐng)輸入密碼' type='password' prefix-icon='icon-login_pwd' clearable></el-input></el-form-item> </el-form-item> <el-form-item><el-button type='primary' @click='login(’formData’)' icon='el-icon-upload'>登錄</el-button> <el-button @click='resetForm(’formData’)'>重置</el-button></el-form-item></el-form-item> <router-link to='register'>沒(méi)有密碼?注冊(cè)</router-link> </el-form> </el-row></template><script>export default { data() { return { formData: { userName: ’’, password: ’’ }, rules: { userName: [{ required: true, message: ’用戶名不能為空’, trigger: ’blur’ }], password: [{ required: true, message: ’密碼不能為空’, trigger: ’blur’ }] } }; }, methods: { login(formName) { this.$refs[formName].validate(valid => {if (valid) {this.$message({type: ’success’,message: ’登錄成功’ }); this.$router.push({name:’home’});} else {console.log(’error submit!!’);return false;}}); }, resetForm(formName) {this.$refs[formName].resetFields();} }};</script>

register.vue

<template> <el-row type='flex' justify='center'> <el-form ref='formData' :model='formData' :rules='rules' label- @keyup.enter.native='register()'> <el-form-item prop='userName' label='用戶名'><el-input v-model='formData.userName' placeholder='請(qǐng)輸入用戶名' prefix-icon='icon-login_user' clearable></el-input></el-form-item> <el-form-item prop='password' label='密碼'><el-input v-model='formData.password' placeholder='請(qǐng)輸入密碼' type='password' prefix-icon='icon-login_pwd' clearable></el-input></el-form-item> <el-form-item prop='cheackPassword' label='確認(rèn)密碼'><el-input v-model='formData.cheackPassword' placeholder='再次輸入密碼' type='password' prefix-icon='icon-login_pwd' clearable></el-input></el-form-item> </el-form-item> <el-form-item> <el-button type='primary' @click='register(’formData’)' icon='el-icon-upload'>注冊(cè)</el-button> <el-button @click='resetForm(’formData’)'>重置</el-button></el-form-item> <router-link to='login'>已有密碼?登錄</router-link> </el-form> </el-row></template><script>export default { data() { var validatePass = (rule, value, callback) => {if (value === ’’) {callback(new Error(’請(qǐng)?jiān)俅屋斎朊艽a’));} else if (value !== this.formData.password) {callback(new Error(’兩次輸入密碼不一致!’));} else {callback();}}; return { formData: { userName: ’’, password: ’’, cheackPassword:’’ }, rules: { userName: [{ required: true, message: ’用戶名不能為空’, trigger: ’blur’ }], password: [{ required: true, message: ’密碼不能為空’, trigger: ’blur’ }], cheackPassword: [{ required: true, validator: validatePass, trigger: ’blur’ }] } }; }, methods: { register(formName) { this.$refs[formName].validate(valid => {if (valid) {this.$message({type: ’success’,message: ’注冊(cè)成功’ }); this.$router.push({name:’login’});} else {console.log(’error submit!!’);return false;}}); }, resetForm(formName) {this.$refs[formName].resetFields();} }};</script>

效果圖

vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼

vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼

到此這篇關(guān)于vue實(shí)現(xiàn)登錄注冊(cè)模板的示例代碼的文章就介紹到這了,更多相關(guān)vue 登錄注冊(cè)模板內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 97国产在线视频 | 欧美日韩不卡中文字幕在线 | 成人国内精品久久久久影 | 成人在线观看视频免费 | 91视频免费观看 | 日本理论片中文在线观看2828 | 丁香啪啪天堂激情婷婷 | 免费中国一级啪啪片 | 国产操 | 国产三级精品视频 | 奇米网狠狠干 | 成人国产精品一区二区网站 | 日本成人一级 | 国产人成亚洲第一网站在线播放 | 玖玖视频精品 | 国产福利视频一区二区微拍 | 国产精品久久久久久影院 | 欧美日韩亚洲国产一区二区三区 | 国产福利视频在线 | 欧美精品伊人久久 | 国产精品美女视频 | 99九九视频 | 香蕉在线视频观看 | 蜜桃嫩草 | 成 人免费va视频 | 日韩中文字幕在线免费观看 | 亚洲精品欧美日韩 | 99亚洲| 九一在线完整视频免费观看 | 玛雅视频网站在线观看免费 | 女人被狂躁视频免费版 | 亚洲高清在线观看播放 | 国产精品欧美一区二区 | 久久99亚洲精品一区二区 | 亚洲精品一区二区三区在 | 亚洲三级小视频 | 啪啪激情网| 午夜水蜜桃视频在线观看 | 久久久久久久亚洲精品一区 | 亚洲草逼视频 | 色片在线播放 |