Vue基于iview实现登录密码的显示与隐藏功能


Posted in Javascript onMarch 06, 2020

iview简介

iView 是一套基于 Vue.js 的开源 UI 组件库,主要服务于 PC 界面的中后台产品。

1.背景

近期,在使用abp开发项目过程中,前端vue输入登录密码时默认隐藏,但是如果用户输错密码需要切换显示跟隐藏。故有此文。

2.实现最终效果

2.1 隐藏密码

Vue基于iview实现登录密码的显示与隐藏功能 

2.2 显示密码

Vue基于iview实现登录密码的显示与隐藏功能 

显示密码需要点击密码框左侧眼睛

3.实现思路

3.1 v-if判断当前密码显示状态

密码输入框跟密码图标最外层用Div标签包住,并且用vue的v-if v-else监听其显示还是隐藏状态。

<div >
 <div v-if="switchPassDisFlag">
 <div v-on:click="SwitchPassDis">
 <i class="ivu-iivu-icon-ios-eye-off-outline ivu-input-iivu-input-icon-normal" style="left:0"></i>
 </div>
 <input v-model="loginModel.passwoautocomplete="off" spellcheck="faltype="password" :placeholde('PasswordPlaceholder')" class="ivu-inivu-input-large" style="padding-left:3padding-right:0"> 
 </div>
 <div v-else>
 <div v-on:click="SwitchPassDis">
 <i class="ivu-icon ivu-icon-ios-eye-outlivu-input-icon ivu-input-icon-normstyle="left:0"></i>
 </div>
 <input v-model="loginModel.passwoautocomplete="off" spellcheck="faltype="text" :placeholde('PasswordPlaceholder')" class="ivu-inivu-input-large" style="padding-left:3padding-right:0"> 
 </div>  
</div>

定义显示状态值switchPassDisFlag默认情况是隐藏。

switchPassDisFlag:boolean=false

这里用得是typescript强类型,所以需要定义成boolean类型,之所以定义成boolean类型是为了下面监听图标点击事件中状态取反方便。

3.2 密码隐藏状态

使用Div标签包住图标跟密码输入框,并且设置闭眼图标,输入框类型为password。

使用图标如下:

选中Iview页面的图标菜单如下图

Vue基于iview实现登录密码的显示与隐藏功能 

选中如下图的两只眼睛即可

Vue基于iview实现登录密码的显示与隐藏功能 

密码隐藏状态下,显示闭眼图标,跟密码类型,同时监听眼睛图标的点击事件,以便切换到睁眼状态(即密码显示状态)。

div v-if="switchPassDisFlag">
 <div v-on:click="SwitchPassDis">
 <i class="ivu-icon ivu-icon-ios-eye-off-outline ivu-input-icon ivu-input-icon-normal" style="left:0"></i> 
 </div>
 <input v-model="loginModel.password" autocomplete="off" spellcheck="false" type="password" :placeholder="L('PasswordPlaceholder')" class="ivu-input ivu-input-large" style="padding-left:32px;padding-right:0"> 
</div>

3.3 密码显示状态

密码显示状态下,显示睁眼图标,跟text类型,同时监听眼睛图标的点击事件,

以便切换到闭眼状态。

<div v-else>
 <div v-on:click="SwitchPassDis">
 <i class="ivu-icon ivu-icon-ios-eye-outline ivu-input-icon ivu-input-icon-normal" style="left:0"></i>
 </div>
 <input v-model="loginModel.password" autocomplete="off" spellcheck="false" type="text" :placeholder="L('PasswordPlaceholder')" class="ivu-input ivu-input-large" style="padding-left:32px;padding-right:0"> 
</div>

3.4 两种眼睛图标(睁眼,闭眼)的监听切换密码显示状态事件

SwitchPassDis()
 {
 this.switchPassDisFlag=!this.switchPassDisFlag; 
 }

4.小结

本文不需要引入图片,方便的利用了iview的睁闭眼图标;

利用了vue中 v-if,v-else直接面向标签(即显示数据)编程;

灵活利用了div标签,因为iview的icon图标是无法监听点击事件的,而本文把icon图标用div标签包住,从而实现了点击监听。

总结

到此这篇关于Vue基于iview实现登录密码的显示与隐藏功能的文章就介绍到这了,更多相关vue 登录密码显示隐藏内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JS中的log对象获取以及debug的写法介绍
Mar 03 Javascript
探索Javascript中this的奥秘
Dec 11 Javascript
Javascript oop设计模式 面向对象编程简单实例介绍
Dec 13 Javascript
bootstrap timepicker在angular中取值并转化为时间戳
Jun 13 Javascript
vue-cli结合Element-ui基于cropper.js封装vue实现图片裁剪组件功能
Mar 01 Javascript
Vue cli构建及项目打包以及出现的问题解决
Aug 27 Javascript
jquery实现动态添加附件功能
Oct 23 jQuery
vue中使用vue-cli接入融云实现即时通信
Apr 19 Javascript
node中实现删除目录的几种方法
Jun 24 Javascript
Node.js中console.log()输出彩色字体的方法示例
Dec 01 Javascript
Paypal支付不完全指北
Jun 04 Javascript
JS字符串和数组如何实现相互转化
Jul 02 Javascript
Vue状态模式实现窗口停靠功能(灵动、自由, 管理后台Admin界面)
Mar 06 #Javascript
javascript中可能用得到的全部的排序算法
Mar 05 #Javascript
js的Object.assign用法示例分析
Mar 05 #Javascript
Element的el-tree控件后台数据结构的生成以及方法的抽取
Mar 05 #Javascript
element-ui树形控件后台返回的数据+生成组织树的工具类
Mar 05 #Javascript
vue中使用vue-print.js实现多页打印
Mar 05 #Javascript
koa2的中间件功能及应用示例
Mar 05 #Javascript
You might like
2019十大人气国漫
2020/03/13 国漫
PHP提示Notice: Undefined variable的解决办法
2012/11/24 PHP
php设计模式之建造器模式分析【星际争霸游戏案例】
2020/01/23 PHP
javascript 添加和移除函数的通用方法
2009/10/20 Javascript
基于Jquery的开发个代阴影的对话框效果代码
2011/07/28 Javascript
jQuery插件原来如此简单 jQuery插件的机制及实战
2012/02/07 Javascript
javascript实现网站加入收藏功能
2015/12/16 Javascript
js中数组结合字符串实现查找(屏蔽广告判断url等)
2016/03/30 Javascript
Google 地图API Map()构造器详解
2016/08/06 Javascript
解析预加载显示图片艺术
2016/12/05 Javascript
浅谈JsonObject中的key-value数据解析排序问题
2017/12/06 Javascript
Angular4集成ng2-file-upload的上传组件
2018/03/14 Javascript
vue中的自定义分页插件组件的示例
2018/08/18 Javascript
node.js express框架简介与实现
2019/07/23 Javascript
小程序富文本提取图片可放大缩小
2020/05/26 Javascript
vue图片裁剪插件vue-cropper使用方法详解
2020/12/16 Vue.js
python网络编程之读取网站根目录实例
2014/09/30 Python
如何使用VSCode愉快的写Python于调试配置步骤
2018/04/06 Python
python SMTP实现发送带附件电子邮件
2018/05/22 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
2019/06/04 Python
python Django中models进行模糊查询的示例
2019/07/18 Python
图文详解Django使用Pycharm连接MySQL数据库
2019/08/09 Python
python 实现多维数组转向量
2019/11/30 Python
意大利制造的男鞋和女鞋:SCAROSSO
2018/03/07 全球购物
财务助理岗位职责
2013/11/10 职场文书
安全检查管理制度
2014/02/02 职场文书
海飞丝广告词
2014/03/20 职场文书
预备党员公开承诺书
2014/05/28 职场文书
大学专科求职信
2014/07/02 职场文书
公务员群众路线专题民主生活会发言材料
2014/09/17 职场文书
党员学习群众路线教育实践活动对照检查材料
2014/09/23 职场文书
社区元宵节活动总结
2015/02/06 职场文书
董事会决议范本
2015/07/01 职场文书
班委竞选稿范文
2015/11/21 职场文书
详解Java实践之抽象工厂模式
2021/06/18 Java/Android
SpringBoot全局异常处理方案分享
2022/05/25 Java/Android