需要自定义选择文件样式的时候,一直都是使用dom + js的方式,隐藏一个input标签,然后用别的dom写样式去调用input标签,后面一直在想能不能直接调用js去实现,代码写起来更舒服,然后就改进了下使用方式
原来实现方式
<div class="container">
<div
class="btn"
style="
background: #ccffff;
padding: 20px;
border-radius: 5px;
display: inline-block;
"
onclick="pick()"
>
选择文件
</div>
<input type="file" id="input" style="display: none" onchange="change(this)" />
</div>
function change(e) {
console.log(e.files);
}
function pick() {
let input = document.querySelector("#input");
input.click();
}
改进实现方式
安装@lingw/pick-file包
import pickFile from "@lingw/pick-file"
pickFile().then(files =>{
console.log(files);
})
按钮样式自定义即可
npm仓库地址:https://www.npmjs.com/package/@lingw/pick-file