当前位置:首页 > VUE

vue密码显示隐藏实现

2026-02-24 11:00:06VUE

实现密码显示/隐藏功能

在Vue中实现密码显示与隐藏功能,可以通过结合v-modelv-on指令来控制输入框的类型属性。

模板部分代码示例:

<template>
  <div class="password-input">
    <input 
      :type="showPassword ? 'text' : 'password'" 
      v-model="password" 
      placeholder="请输入密码"
    >
    <button @click="togglePassword">
      {{ showPassword ? '隐藏' : '显示' }}
    </button>
  </div>
</template>

脚本部分代码示例:

<script>
export default {
  data() {
    return {
      password: '',
      showPassword: false
    }
  },
  methods: {
    togglePassword() {
      this.showPassword = !this.showPassword
    }
  }
}
</script>

使用图标代替文本按钮

可以使用字体图标库(如Font Awesome)来提升用户体验。

安装Font Awesome:

npm install @fortawesome/fontawesome-free

使用图标示例:

<template>
  <div class="password-input">
    <input 
      :type="showPassword ? 'text' : 'password'" 
      v-model="password"
    >
    <i 
      class="fas" 
      :class="showPassword ? 'fa-eye-slash' : 'fa-eye'" 
      @click="togglePassword"
    ></i>
  </div>
</template>

添加样式增强视觉效果

为密码输入框添加基本样式可以改善外观。

样式示例:

<style scoped>
.password-input {
  position: relative;
  display: inline-block;
}

.password-input input {
  padding: 8px;
  padding-right: 30px;
}

.password-input i {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}
</style>

使用第三方组件库

如果需要快速实现,可以使用现成的UI组件库如Element UI或Vuetify。

Element UI示例:

<template>
  <el-input
    v-model="password"
    :type="showPassword ? 'text' : 'password'"
    placeholder="请输入密码"
  >
    <template #suffix>
      <i 
        class="el-icon-view" 
        @click="showPassword = !showPassword"
      ></i>
    </template>
  </el-input>
</template>

表单验证集成

可以结合Vuelidate或VeeValidate进行表单验证。

Vuelidate集成示例:

vue密码显示隐藏实现

import { required, minLength } from 'vuelidate/lib/validators'

export default {
  data() {
    return {
      password: '',
      showPassword: false
    }
  },
  validations: {
    password: {
      required,
      minLength: minLength(6)
    }
  }
}

标签: 密码vue
分享给朋友:

相关文章

vue实现菜单调用

vue实现菜单调用

Vue 实现动态菜单的常见方法 基于路由配置生成菜单 Vue Router 的路由配置可以天然转化为菜单结构,适合权限与路由绑定的系统: // router/index.js const route…

vue实现缩放

vue实现缩放

Vue 实现缩放的方法 在 Vue 中实现缩放功能可以通过多种方式完成,以下是一些常见的方法: 使用 CSS transform 属性 通过 CSS 的 transform: scale() 属性可…

ssh vue 实现

ssh vue 实现

使用SSH连接Vue项目部署的服务器 在Vue项目开发或部署过程中,可能需要通过SSH连接到远程服务器进行配置或维护。以下是实现SSH连接并部署Vue项目的关键步骤: 生成SSH密钥对 在本地终端运…

vue实现同步

vue实现同步

Vue 实现同步的方法 在 Vue 中实现同步操作通常涉及数据绑定、状态管理和异步操作的处理。以下是几种常见的方法: 使用计算属性(Computed Properties) 计算属性基于响应式依赖进…

vue 实现工具

vue 实现工具

Vue 实现工具的方法 使用 Vue 实现工具功能可以通过多种方式完成,具体取决于工具的类型和需求。以下是几种常见的方法: 组件化实现 创建一个独立的 Vue 组件来封装工具功能。例如,实现一个计…

vue单选实现

vue单选实现

Vue 单选实现 在 Vue 中实现单选功能可以通过多种方式完成,以下是几种常见的方法: 使用 v-model 绑定单选按钮 通过 v-model 绑定一个变量,可以实现单选效果。当用户选择不同的选…