Vue 2 + Element UI 实现密码显示、隐藏切换功能

一、使用 Element UI 的 show-password 属性

1、Element UI 的 <el-input> 组件提供了一个方便的 show-password 属性。启用后,它会自动添加一个切换密码显示、隐藏的按钮。

2、代码

javascript 复制代码
<template>
  <el-form-item prop="password">
    <el-input
      v-model="password"
      placeholder="请输入密码"
      type="password"
      show-password
    >
    </el-input>
  </el-form-item>
</template>

3、优点 :实现简单,无需额外代码。缺点:不支持自定义图标。

二、自定义后缀图标实现密码显示/隐藏

1、如果你想要使用自己的图标或实现更多自定义功能,可以通过 插槽(slot) 的方式来自定义后缀图标,并通过绑定事件来切换密码显示状态。

2、代码

javascript 复制代码
<el-input style="width: 315px;" :type="isShowPassword ? 'text' : 'password'" placeholder="请输入密码" v-model="password">
  <i slot="suffix" :class="isShowPassword ? 'el-icon-view' : 'el-icon-lock'" @click="isShowPassword = !isShowPassword"></i>
</el-input>

3、实现说明

(1)自定义插槽:使用 slot="suffix" 来自定义输入框的后缀区域。

(2)图标切换逻辑:定义一个布尔值变量 isShowPassword,用于跟踪密码的显示状态。绑定 @click 事件到后缀图标上,点击后切换 isShowPassword 的状态。

(3)输入框类型切换:通过 :type="isShowPassword ? 'text' : 'password'" 动态改变输入框的类型。

4、效果图

相关推荐
小李子呢02115 分钟前
前端八股Vue(7)---computed计算属性和watch侦听器
前端·javascript·vue.js
Ruihong1 小时前
Vue3 转 React:组件透传 Attributes 与 useAttrs 使用详解|VuReact 实战
vue.js·react.js
gwjcloud1 小时前
基于linux下docker部署前端vue项目
前端·javascript·vue.js
小李子呢02112 小时前
前端八股Vue(6)---v-if和v-for
前端·javascript·vue.js
周星星日记3 小时前
vue3中静态提升和patchflag实现
前端·vue.js·面试
军军君014 小时前
Three.js基础功能学习十五:智能黑板实现实例二
开发语言·前端·javascript·vue.js·3d·threejs·三维
IT枫斗者4 小时前
构建具有执行功能的 AI Agent:基于工作记忆的任务规划与元认知监控架构
android·前端·vue.js·spring boot·后端·架构
hotlinhao4 小时前
Nginx rewrite last 与 redirect 的区别——Vue history 模式短链接踩坑记录
前端·vue.js·nginx
weixin_461769404 小时前
npm create vue@latest 错误
前端·vue.js·npm
写不来代码的草莓熊4 小时前
el-date-picker ,自定义输入数字自动转换显示yyyy-mm-dd HH:mm:ss格式
前端·javascript·vue.js