自定义html图片上传,自定义input上传图片组件

自定义input上传图片组件,美化样式

前段时间因为项目需求,做过一个上传图片组件,这里分享下大致思路,希望对有需要的人有所帮助~~~

功能需求:1.上传图片限制大小、分辨率、类型

2.上传图片支持自由裁剪

3.图片上传后支持预览和删除

效果图,只截取了一小部分,大致看下就ok啦,是不是感觉比原生的好看多了^_^

bV4E94?w=344&h=121

项目是基于react框架写的,话不多说,开始撸代码~~~

Step1:编写基础html结构

type="file"

accept="image/jpeg, image/gif, image/png, image/bmp"

styleName="input-file"

/>

{uploadButton}

// uploadButton组件代码如下:

const uploadButton = (

上传照片

);

Step2:基础样式

input-file {

width: 0.1px;

height: 0.1px;

opacity: 0;

overflow: hidden;

position: absolute;

z-index: -1;

}

.ant-upload {

@w: 100px;

width: @w;

height: @w;

padding: 5px;

background-color: #fafafa;

border: 1px dashed #d9d9d9;

border-radius: 4px;

display: block;

cursor: pointer;

position: relative;

}

.upload-plus-text {

width: 100%;

text-align: center;

position: absolute;

left: 0;

top: 50%;

transform: translateY(-50%);

i {

font-size: 28px;

color: #999;

}

.ant-upload-text {

margin-top: 8px;

font-size: 12px;

color: #666;

}

}

Step3:添加事件处理

对上传图片的类型、大小和分辨率进行检测

type="file"

id='file'

accept="image/jpeg, image/gif, image/png, image/bmp"

styleName="input-file"

onChange={e => {

this.onFileChange(e);

}}

/>

{uploadButton}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值