提交 91e004e2 编写于 作者: V vben

fix(upload): fix maxNumber not work #240

上级 22088e82
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
### 🐛 Bug Fixes ### 🐛 Bug Fixes
- 修复菜单在 hmr 时数据被置空 - 修复菜单在 hmr 时数据被置空
- 修复 Upload 组件 maxNumber 失效问题
## 2.0.0-rc.18 (2021-02-05) ## 2.0.0-rc.18 (2021-02-05)
......
import { generate } from '@ant-design/colors'; import { generate } from '@ant-design/colors';
export const primaryColor = '#0084f4'; export const primaryColor = '#0084f4';
export const themeMode = 'light'; export const themeMode = 'light';
......
...@@ -20,7 +20,12 @@ ...@@ -20,7 +20,12 @@
</Tooltip> </Tooltip>
</a-button-group> </a-button-group>
<UploadModal v-bind="bindValue" @register="registerUploadModal" @change="handleChange" /> <UploadModal
v-bind="bindValue"
:previewFileList="fileListRef"
@register="registerUploadModal"
@change="handleChange"
/>
<UploadPreviewModal <UploadPreviewModal
:value="fileListRef" :value="fileListRef"
......
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
</BasicModal> </BasicModal>
</template> </template>
<script lang="ts"> <script lang="ts">
import { defineComponent, reactive, ref, toRefs, unref, computed } from 'vue'; import { defineComponent, reactive, ref, toRefs, unref, computed, PropType } from 'vue';
import { Upload, Alert } from 'ant-design-vue'; import { Upload, Alert } from 'ant-design-vue';
import { BasicModal, useModalInner } from '/@/components/Modal'; import { BasicModal, useModalInner } from '/@/components/Modal';
// import { BasicTable, useTable } from '/@/components/Table'; // import { BasicTable, useTable } from '/@/components/Table';
...@@ -63,7 +63,13 @@ ...@@ -63,7 +63,13 @@
import { useI18n } from '/@/hooks/web/useI18n'; import { useI18n } from '/@/hooks/web/useI18n';
export default defineComponent({ export default defineComponent({
components: { BasicModal, Upload, Alert, FileList }, components: { BasicModal, Upload, Alert, FileList },
props: basicProps, props: {
...basicProps,
previewFileList: {
type: Array as PropType<string[]>,
default: () => [],
},
},
emits: ['change', 'register'], emits: ['change', 'register'],
setup(props, { emit }) { setup(props, { emit }) {
const { t } = useI18n(); const { t } = useI18n();
...@@ -206,7 +212,7 @@ ...@@ -206,7 +212,7 @@
// 点击开始上传 // 点击开始上传
async function handleStartUpload() { async function handleStartUpload() {
const { maxNumber } = props; const { maxNumber } = props;
if (fileListRef.value.length > maxNumber) { if ((fileListRef.value.length + props.previewFileList?.length ?? 0) > maxNumber) {
return createMessage.warning(t('component.upload.maxNumber', [maxNumber])); return createMessage.warning(t('component.upload.maxNumber', [maxNumber]));
} }
try { try {
......
...@@ -156,7 +156,7 @@ export function createPreviewActionColumn({ ...@@ -156,7 +156,7 @@ export function createPreviewActionColumn({
// onClick: handlePreview.bind(null, record), // onClick: handlePreview.bind(null, record),
// }); // });
// } // }
return <TableAction actions={actions} />; return <TableAction actions={actions} outside={true} />;
}, },
}; };
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册