基于vue2.x实现文件上传(w-upload)组件

本文介绍如何基于Vue2.x实现文件上传组件w-upload,通过修改样式和利用CSS实现上传按钮的定制。内容包括实现思路、实现过程、组件逻辑及父组件的交互。同时提供在线演示地址和Attributes详细说明。
摘要由CSDN通过智能技术生成
在线演示地址w-upload

在这一系列的博客里,有一些其他的组件实现过程,有兴趣的童鞋可以了解一下,今天我们来介绍一下w-upload文件上传组件的实现原理。

上传文件

实现思路


  • 刚开始写这个的时候我自己也感觉很懵逼,感觉这个原生上传文件的样式咋改,很烦,最后在github上大佬们的实现过程,顿时就感觉这个东西真的很假,就只是让样式变得好看而已,不多说了。来说一下这个的实现过程。

  • 其实原生的上传文件的表单是这样的,我们怎样修改其样式呢,其实是不好改的,既然修改不了,我们就用一个比较特别的方法,这时候就可以凸显出css的强大了,我们通过让input上传文件通过opacity设置为0,然后给其设置为绝对定位,使其脱离文档流,覆盖在我们预期的样式上,这样我们每次点击的是input框,而不是我们预期的button按钮,这样就可以正常触发事件了。


实现过程

  • 子组件以及样式
<div class="upload-block">
    <div class="uploadBtn">
      <w-button v-if="disable" type="primary" class="disable-btn">
        <span>File</span>
        <i class="w-icon-ascend"></i>
      </w-button>
      <w-button v-else 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值