vue防止浏览器自动填充以及记住密码

本文探讨了在Vue项目中如何避免浏览器对type='password'的input字段自动填充和记住密码的问题。解决方案包括将input类型改为text并调整样式以模拟密码输入效果,以及创建自定义input组件来实现密码显示为圆点的样式,同时仍让浏览器认为这是密码输入。
摘要由CSDN通过智能技术生成

当我们使用input,浏览器会对带有type="password"的input进行记住密码。
解决方法:
一,input的type改为text,然后修改样式
vue代码

 <el-input v-model="password.checkPass" type="text"
  class="no-autofill-pwd"
 ></el-input>

css代码

.no-autofill-pwd {
   
  /deep/ .el-input__inner {
   
    -webkit-text-security: disc !important;
  }
}

这样type为text的输入样式就会变成圆点
在这里插入图片描述
二,可以自定义一个input,然后把输入的密码转换为圆点样式
在组件的目录下创建一个inp.vue文件

<template>
    <div class="pw_input_cp el-input">
        <input 
            class="el-input__inner"
            placeholder="请输入密码" 
            ref="input"
            @input="handleInput"
            @compositionstart="handleCompositionStart"
            @compositionend="handleCompositionEnd"/>
    </div>
</template>

<script>
//自定义密码输入框
//input元素光标操作
class CursorPosition{
    
    constructor(_inputEl) {
   
        this._inputEl = _inputEl;
    } 
    //获取光标的位置 前,后,以及中间字符
    get(){
     
        var rangeData = {
    text: "", start: 0, end: 0 };  
        if (this._inputEl.setSelectionRange) {
    // W3C      
            this._inputEl.focus();  
            rangeData.start = this._inputEl.selectionStart;  
            rangeData.end = this._inputEl.selectionEnd;  
            rangeData.text = (rangeData.start != rangeData.end) ? this._inputEl.value.substring(rangeData.start, rangeData.end) :
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值