Vue基于iview实现登录密码的显⽰与隐藏功能
⽬录
1.背景
2.实现最终效果
2.1 隐藏密码
2.2 显⽰密码
3.实现思路
3.1 v-if判断当前密码显⽰状态
3.2 密码隐藏状态
3.3 密码显⽰状态
3.4 两种眼睛图标(睁眼,闭眼)的监听切换密码显⽰状态事件
4.⼩结
iview简介
iView 是⼀套基于 Vue.js 的开源 UI 组件库,主要服务于 PC 界⾯的中后台产品。
1.背景
近期,在使⽤abp开发项⽬过程中,前端vue输⼊登录密码时默认隐藏,但是如果⽤户输错密码需要切换显⽰跟隐藏。故有此⽂。
2.实现最终效果
2.1 隐藏密码
2.2 显⽰密码登录页面背景图
显⽰密码需要点击密码框左侧眼睛
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" ></i>
</div>
<input v-model="loginModel.passwoautocomplete="off" spellcheck="faltype="password" :placeholde('PasswordPlaceholder')" class="ivu-inivu-input-large" >  </div>
<div v-else>
<div v-on:click="SwitchPassDis">
<i class="ivu-icon ivu-icon-ios-eye-outlivu-input-icon ivu-input-icon-norm></i>
</div>
<input v-model="loginModel.passwoautocomplete="off" spellcheck="faltype="text" :placeholde('PasswordPlaceholder')" class="ivu-inivu-input-large" >
</div>
</div>
定义显⽰状态值switchPassDisFlag默认情况是隐藏。
switchPassDisFlag:boolean=false
这⾥⽤得是typescript强类型,所以需要定义成boolean类型,之所以定义成boolean类型是为了下⾯监听图标点击事件中状态取反⽅便。
3.2 密码隐藏状态
使⽤Div标签包住图标跟密码输⼊框,并且设置闭眼图标,输⼊框类型为password。
使⽤图标如下:
选中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" ></i>
</div>
<input v-model="loginModel.password" autocomplete="off" spellcheck="false" type="password" :placeholder="L('PasswordPlaceholder')" class="ivu-input ivu-input-large" > </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" ></i>
</div>
<input v-model="loginModel.password" autocomplete="off" spellcheck="false" type="text" :placeholder="L('PasswordPlaceholder')" class="ivu-input ivu-input-large" >
</div>
3.4 两种眼睛图标(睁眼,闭眼)的监听切换密码显⽰状态事件
SwitchPassDis()
{
this.switchPassDisFlag=!this.switchPassDisFlag;
}
4.⼩结
本⽂不需要引⼊图⽚,⽅便的利⽤了iview的睁闭眼图标;
利⽤了vue中 v-if,v-else直接⾯向标签(即显⽰数据)编程;
灵活利⽤了div标签,因为iview的icon图标是⽆法监听点击事件的,⽽本⽂把icon图标⽤div标签包住,从⽽实现了点击监听。
总结
到此这篇关于Vue基于iview实现登录密码的显⽰与隐藏功能的⽂章就介绍到这了,更多相关vue 登录密码显⽰隐藏内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!