拖拽上传和记住密码问题

2020-11-03 15:45:20 浏览数 (1)

最近一直在开发项目,不需要加班,但是要一整天都撸代码,慢慢的居然发现自己对于业务代码有了一些进步,尤其是对elementUi的使用。

上传,之前从来没有说需要提示有超出大小范围或者是文件不支持的,因为都默认是后台管理,一些大家默认的东西就不需要。这次不行,要提示,而element上传拖拽被过滤了,类型不符合的不会有反应,内部已经过滤了。不限制accept可以,但是点击上传的时候又没办法过滤。一开始想着要不要换个控件,后来又想着能不能覆盖element的方法,手动触发handleClick,试过了效果都不理想,于是自己写了一个,其实上传真的很简单,包括拖动文件上传:

<div

@dragover="fileDragover"

@drop="fileDrop"

@click="handleClick">

<p>点击或将文件拖拽到这里上传</p>

<input

type="file"

accept=".png, .jpg, .jpeg"

multiple

@change="handleChange"

ref="input"

style="display: none;"/>

</div>

fileDragover(e) {

e.preventDefault();

},

fileDrop(e) {

e.preventDefault();

const files = e.dataTransfer.files;

},

handleChange(e) {

const files = e.target.files;

e.target.value = "";

}

很简单就实现了,再去看看element的拖拽上传,就是多了一些逻辑和dragleave。

不知道你们有没有遇到过浏览器记住密码只会,输入框是密码的情况下会出现自动填充或者出现下拉选择:

很早之前出现过一次自动填充,自动填充是多加一个input输入框,下拉选择是这次才出现,花了蛮长时间去查解决办法,忘记是哪里看见的方法了,引用外部的字体文件ttf,然后:

@font-face {

font-family: "password";

src: url(../../assets/css/PasswordEntry.ttf);

}

.pwd-input {

font-family: "password";

}

输入框type改成text,加上class,输入的时候字体就会变成type是password那样,只是有一点问题,如果你placeholder里面提示密码的限制,如果是数字会变成黑点。另外就是如果要兼容ie,字体文件要另外一个格式,这边暂时是没有处理。

很久没有学习了,这段时间确实是放松了,今天先水一篇文章,慢慢的开始继续学习。

0 人点赞