Vue3输入框没有输入内容时进行文字提示,输入文字自动消失

**先看效果:**当输入框为空或者不符合要求是在输入框下方进行文字提示,检测到有输入内容则提示消失

1.html

要用到:class动态绑定样式和@input检测输入框状态,看代码

html 复制代码
<el-input
    v-model="diauser"
    style="margin-bottom: 20px; width: 70%"
    placeholder="请输入账户"
    :prefix-icon="Avatar"
    clearable
    :class="{ error: diauserError }"
    @input="checkInput"
    ></el-input>
<small v-if="diauserError" class="error-message">账户不能为空且由6-16位字母、数字、下划线组成</small>

因为我写了多个输入框,所以我没有用div进行包裹,选择直接在el-input标签下直接使用span,但我想要的小字体所有把span换成了small**(** 但在css中也做了字体大小修改**)**

2.js

js部分要定义为false,默认提示语为关闭状态

methods中代码为,使用管道符|| 进行逻辑判断的连接 (||==or或者)

javascript 复制代码
if (
   this.diauser.trim() === "" ||
   !/(?=.*[A-Za-z_])[A-Za-z0-9_]{6,16}$/.test(this.diauser)
   ) {
     this.diauserError = true;
   }

还有一个检测输入框状态的方法

当点击输入框时触发checkInput方法,this.diauser.trim()会检查this.diauser是否为空或者不符合设定预期,this.diauserError是上方设置的布尔值,不符合预期就是true,其余都默认为false

3.css

定义提示语字体颜色、大小(格式)等

css 复制代码
.error-message {
  color: red;
  font-size: 12px;
  margin-top: -20px;
}

如有错误,欢迎指正~!

相关推荐
大家的林语冰14 小时前
✌️ Deno 2.9 来了,ESM 直接导入 CSS,甚至能开发桌面应用?!
前端·javascript·node.js
不简说15 小时前
JS 代码技巧 vol.1 — 10 个让代码少写 30% 的小套路
前端·javascript·面试
@@@@@@@@5415 小时前
JavaScript 的缺点与 TypeScript 的弥补
开发语言·javascript·typescript
Hilaku15 小时前
为什么业务型前端容易遭遇中年危机?
前端·javascript·程序员
এ慕ོ冬℘゜15 小时前
深度解析 JavaScript:赋予 Web 灵魂的“全栈语言”
开发语言·前端·javascript
iCOD3R15 小时前
Skill - 3秒生成精美GitHub主页
前端·程序员·ai编程
爱勇宝15 小时前
《道德经》第5章:生产环境不相信眼泪
前端·后端·架构
掘金者阿豪15 小时前
LEFT JOIN 凭空消失的背后,是优化器偷偷帮你做了决定
前端·后端
HackTwoHub15 小时前
AntiDebug Mcp、AI逆向绕过前端,Hook 加密接口,抓取 Vue 路由漏洞,接入 MCP 让 AI 自动化挖掘前端漏洞
前端·vue.js·人工智能·安全·web安全·网络安全·系统安全
Mr_凌宇15 小时前
AI 应用工程进阶扩展学习笔记 二
前端·面试