Vue常见问题

ops/2024/10/22 7:34:59/

使用 v-model 而不是 :model 在 el-form 中,应该使用 :model 而不是 v-model。Vue 3 中的 v-model 用于双向绑定,而 :model 用于将数据传递给表单。
怎么创建一个注册表单,带验证功能
  • 输入框记着添加v-model绑定数据
  • 在它上边的form-item加上prop,做校验
<script setup>javascript">
import { User, Lock } from '@element-plus/icons-vue'
import { ref } from 'vue'
const registerData=ref({username:'',password:'',rePassword:''
})
const rePasswordValid=(rule,value,callback)=>{if(value==='')callback(new Error('请确认密码'))if(value!==registerData.value.password)callback(new Error('两次密码不一致')) 
}
const registerDataRules=ref({username:[{required:true,message:'请输入用户名',trigger:'blur'},{min:6,max:15,message:'用户名长度在6-15位之间',trigger:'blur'}],password:[{required:true,message:'请输入密码',trigger:'blur'},{min:6,max:15,message:'密码长度在6-15位之间',trigger:'blur'}],rePassword:[{validator:rePasswordValid,trigger:'blur'}]
})
const register=()=>{console.log(registerData)
}
</script><template><el-row class="login-page"><el-col :span="12" class="bg"></el-col><el-col :span="6" :offset="3" class="form"><!-- 注册表单 --><el-form ref="formRef" size="large" autocomplete="off" :model="registerData" :rules="registerDataRules"><el-form-item ><h1>注册</h1></el-form-item><el-form-item prop="username"><el-input v-model="registerData.username" :prefix-icon="User" placeholder="请输入用户名"></el-input></el-form-item><el-form-item prop="password"><el-input v-model="registerData.password" :prefix-icon="Lock" type="password"placeholder="请输入密码"></el-input></el-form-item><el-form-item  prop="rePassword"><el-input v-model="registerData.rePassword" :prefix-icon="Lock" type="password"placeholder="请输入再次密码"></el-input></el-form-item><!-- 注册按钮 --><el-form-item><el-button class="button" @click="register" type="primary" auto-insert-space>注册</el-button></el-form-item><el-form-item class="flex"><el-link type="info" :underline="false" @click="isRegister = false">← 返回</el-link></el-form-item></el-form></el-col></el-row>
</template><style lang="scss" scoped>
/* 样式 */
.login-page {height: 100vh;background-color: #fff;.bg {background: url('@/assets/logo2.png') no-repeat 60% center / 240px auto,url('@/assets/金克斯和日落.png') no-repeat center / cover;border-radius: 0 20px 20px 0;}.form {display: flex;flex-direction: column;justify-content: center;user-select: none;.title {margin: 0 auto;}.button {width: 100%;}.flex {width: 100%;display: flex;justify-content: space-between;}}
}
</style>

http://www.ppmy.cn/ops/124192.html

相关文章

Android input系统原理二

1.inputmanager启动源码分析 在SystemServer.java中构造了 inputmanagerservice的对象&#xff0c;在其构造函数中&#xff0c;最重要的是这个nativeInit函数。 下面是核心代码 inputManager new InputManagerService(context);public InputManagerService(Context context)…

如何删除不需要的右键菜单

比如要删除以下右键菜单&#xff1a; 1. 打开“命令提示符”&#xff0c;并输入“regedit”以打开注册表编辑器。或使用快捷键“WinR”打开“运行”窗口&#xff0c;输入“regedit”以打开注册表编辑器。 2. 在注册表编辑器中&#xff0c;找到路径“计算机HKEY_CLASSES_ROOT/Di…

【深度学习】自动微分——Autodiff or Autograd?

论文 [1].CSC321 Lecture 10: Automatic Differentiation [2].Automatic Differentiation in Machine Learning:a Survey 关键点总结&#xff1a; 雅可比矩阵&#xff1a;对于多变量函数 y ⃗ f ( x ⃗ ) \vec{y} f(\vec{x}) y ​f(x )&#xff0c;其梯度矩阵&#xff08;…

Llama-3.2-3B-Instruct PyTorch模型微调最佳实践

1 引言 Meta Llama 3.2多语言大型语言模型集合&#xff08;LM&#xff09;是一个1B和3B大小&#xff08;文本输入/文本输出&#xff09;的预训练和指令微调模型集合。Llama 3.2指令调整的纯文本模型针对多语言对话用例进行了优化&#xff0c;包括智能检索和总结任务。它们在常…

如何将uniapp项目首次提交到指定git仓库

在移动应用开发领域&#xff0c;uniapp凭借其跨平台的优势&#xff0c;已经成为许多开发者的首选框架。创建一个uniapp项目后&#xff0c;将代码提交到版本控制仓库是项目管理的第一步。本文将详细介绍如何将uniapp项目首次提交到指定的Git仓库。 准备工作 在开始之前&#x…

从数据到洞察:ChatGPT如何革新Python数据分析流程

导读&#xff1a;通过ChatGPT与Python的结合&#xff0c;数据分析流程得到了极大的优化和提升&#xff0c;从数据获取、清洗、代码生成到智能分析和可视化展示&#xff0c;每一步都变得更加高效和智能化。这不仅提高了分析的准确性和效率&#xff0c;还降低了技术门槛&#xff…

PigGo的安装配置

TyporaPigGo的使用 1、下载PigGo 1.1、先打开Typora的偏好设置 1.2 下载PigGo app 1.3 下载Setup-xxx.exe版本 1.4安装成功后打开PigGo 2、配置PigGo 1、安装gitee-uploader插件 2、 PicGo设置 ​ ​ 3、图床设置 3.1配置SM.MS 3.1.1 登录sm,生成秘钥 如果没有注册&…

nacos多数据源插件介绍以及使用

概述 在微服务架构中&#xff0c;服务配置的集中管理和动态调整是至关重要的。Nacos 提供了配置管理和服务发现的功能&#xff0c;其中配置管理支持动态数据源的切换&#xff0c;增强了其在复杂环境中的适用性。默认情况下&#xff0c;Nacos 支持 MySQL 和Derby&#xff0c;但…