马上放假了,时间上相对宽裕,对最近做的东西进行一些总结。今天我们来看一个非常实用的组件,上传组件
我们先从组件的定位、组件的应用场景、组件的特性几个方面进行归纳
对于上传组件,基础的组件功能属于基础组件范畴,满足上传的基本功能。但业务平台的多样化,促使我们需要在基础组件之上,进行多样化扩展,满足业务功能的需求,这个多样化扩展隶属于业务组件层。但是需要注意几个点,进行组件约定,防止腐烂。
以上3个应用场景,一般的平台都有应用,但是不同场景对上传组件的功能要求可能不同。
这就需要考虑到业务特性以及产品规划能力。
可根据实际情况,从定位角度对不同场景的进行应用。
1、单文件上传、多文件上传2、文件格式校验、文件大小校验3、上传文件维护(显示、移除)
对上传组件划分了3层,分别是 Base、Simple、Dialog
Base属于基础组件,提供简单的文件选择,和样式展示
Simple 复合组件-提供系统级别的扩展功能
1、上传提示语2、文件格式、文件大小、模板下载3、已上传列表管理-移除
Dialog 业务型组件
1、展示方式-弹窗2、文件上传功能3、业务参数控制、组件功能控制
/*
* @Description:
* @Author: daerduo
*/
import Upload from './Base';
import Simple from './Simple';
import Dialog from './Dialog';
// 复合组件-上传组件
Upload.Simple = Simple
// 业务组件
Upload.Dialog = Dialog
export default Upload;
/**
* 导入配置
*/
const UploadConfig = {title: '导入成员',download: {type: 'AccountVo',tempName: '导入成员模板.xlsx'}
}
只允许导入XLS/XLSX格式,且大小不超过10M,如果需要也可以下载模板
/**
* 上传文件大小限制
*/
const SimpleUploadConfig = {fileSize: 10
}
默认是Base,之间使用标签即可