From 815250ed341ccaec23e7ea34db6cc478a47ad065 Mon Sep 17 00:00:00 2001 From: jq <1151176506@qq.com> Date: Wed, 18 Nov 2020 22:08:20 +0800 Subject: [PATCH] fix: update upload component --- src/components/Upload/src/FileList.less | 34 +++++++++++ src/components/Upload/src/FileList.tsx | 57 +++++++++++++++++ src/components/Upload/src/UploadModal.vue | 61 ++++++++++++------- .../Upload/src/UploadPreviewModal.vue | 17 +++--- src/components/Upload/src/data.tsx | 2 +- src/components/Upload/src/props.ts | 16 +++++ src/components/Upload/src/types.ts | 30 +++++++++ 7 files changed, 183 insertions(+), 34 deletions(-) create mode 100644 src/components/Upload/src/FileList.less create mode 100644 src/components/Upload/src/FileList.tsx diff --git a/src/components/Upload/src/FileList.less b/src/components/Upload/src/FileList.less new file mode 100644 index 00000000..88788b93 --- /dev/null +++ b/src/components/Upload/src/FileList.less @@ -0,0 +1,34 @@ +@import (reference) '../../../design/index.less'; + +.file-table { + width: 100%; + border-collapse: collapse; + // border: 1px solid @border-color-light; + + .center { + text-align: center; + } + + .left { + text-align: left; + } + + .right { + text-align: right; + } + + &-th, + &-td { + padding: 12px 8px; + } + + thead { + background-color: @background-color-dark; + } + + table, + td, + th { + border: 1px solid @border-color-light; + } +} diff --git a/src/components/Upload/src/FileList.tsx b/src/components/Upload/src/FileList.tsx new file mode 100644 index 00000000..9c831b1d --- /dev/null +++ b/src/components/Upload/src/FileList.tsx @@ -0,0 +1,57 @@ +import { defineComponent } from 'vue'; +import { fileListProps } from './props'; +import { isFunction } from '/@/utils/is'; +import './FileList.less'; + +export default defineComponent({ + name: 'FileList', + props: fileListProps, + setup(props) { + return () => { + const { columns, actionColumn, dataSource } = props; + + return ( + + + {[...columns, actionColumn].map((item) => { + const { width = 0 } = item; + return width ? ( + + ) : ( + + ); + })} + + + + {[...columns, actionColumn].map((item) => { + const { title = '', align = 'center' } = item; + return ; + })} + + + + {dataSource.map((record = {}) => { + return ( + + {[...columns, actionColumn].map((item) => { + const { dataIndex = '', customRender, align = 'center' } = item; + if (customRender && isFunction(customRender)) { + return ( + + ); + } else { + return ; + } + })} + + ); + })} + +
{title}
+ {customRender({ text: record[dataIndex], record })} + {record[dataIndex]}
+ ); + }; + }, +}); diff --git a/src/components/Upload/src/UploadModal.vue b/src/components/Upload/src/UploadModal.vue index 6eb320e6..d5803262 100644 --- a/src/components/Upload/src/UploadModal.vue +++ b/src/components/Upload/src/UploadModal.vue @@ -23,24 +23,25 @@ {{ getUploadBtnText }} - - - - - +
+ + + 选择文件 + +
+