Date: Thu, 21 Oct 2021 00:52:35 +0800
Subject: [PATCH 11/12] fix(upload): file can't be removed when file count
limit is reached, closes #1401
---
CHANGELOG.en-US.md | 4 ++++
CHANGELOG.zh-CN.md | 4 ++++
src/upload/src/Upload.tsx | 8 +++-----
src/upload/src/UploadTrigger.tsx | 13 ++++++++++---
src/upload/src/interface.ts | 1 +
5 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/CHANGELOG.en-US.md b/CHANGELOG.en-US.md
index 317baf86f..c81692bf5 100644
--- a/CHANGELOG.en-US.md
+++ b/CHANGELOG.en-US.md
@@ -2,6 +2,10 @@
## Pending
+## Fixes
+
+- Fix `n-upload`'s file can't be removed when file count limit is reached, closes [#1401](https://github.com/TuSimple/naive-ui/issues/1401).
+
### Feats
- `n-tabs` add `on-before-leave` prop, closes [#1337](https://github.com/TuSimple/naive-ui/issues/1337).
diff --git a/CHANGELOG.zh-CN.md b/CHANGELOG.zh-CN.md
index 28ea0c630..c9fe01aa8 100644
--- a/CHANGELOG.zh-CN.md
+++ b/CHANGELOG.zh-CN.md
@@ -2,6 +2,10 @@
## Pending
+## Fixes
+
+- 修复 `n-upload` 在达到最大文件数量后无法删除文件,关闭 [#1401](https://github.com/TuSimple/naive-ui/issues/1401)
+
### Feats
- `n-tabs` 新增 `on-before-leave` 属性,关闭 [#1337](https://github.com/TuSimple/naive-ui/issues/1337)
diff --git a/src/upload/src/Upload.tsx b/src/upload/src/Upload.tsx
index 194b8a397..3b6d4b76d 100644
--- a/src/upload/src/Upload.tsx
+++ b/src/upload/src/Upload.tsx
@@ -282,11 +282,8 @@ export default defineComponent({
mergedClsPrefixRef
)
const formItem = useFormItem(props)
- const mergedDisabledRef = computed(() => {
+ const maxReachedRef = computed(() => {
const { max } = props
- if (formItem.mergedDisabledRef.value) {
- return true
- }
if (max !== undefined) {
return mergedFileListRef.value.length >= max
}
@@ -515,7 +512,8 @@ export default defineComponent({
openFileDialog,
draggerInsideRef,
handleFileAddition,
- mergedDisabledRef,
+ mergedDisabledRef: formItem.mergedDisabledRef,
+ maxReachedRef,
fileListStyleRef: toRef(props, 'fileListStyle'),
abstractRef: toRef(props, 'abstract'),
cssVarsRef
diff --git a/src/upload/src/UploadTrigger.tsx b/src/upload/src/UploadTrigger.tsx
index 0ecbe19b8..9a956dcfc 100644
--- a/src/upload/src/UploadTrigger.tsx
+++ b/src/upload/src/UploadTrigger.tsx
@@ -22,6 +22,7 @@ export default defineComponent({
const {
mergedClsPrefixRef,
mergedDisabledRef,
+ maxReachedRef,
listTypeRef,
dragOverRef,
openFileDialog,
@@ -34,7 +35,7 @@ export default defineComponent({
)
function handleTriggerClick (): void {
- if (mergedDisabledRef.value) return
+ if (mergedDisabledRef.value || maxReachedRef.value) return
openFileDialog()
}
function handleTriggerDragOver (e: DragEvent): void {
@@ -51,7 +52,13 @@ export default defineComponent({
}
function handleTriggerDrop (e: DragEvent): void {
e.preventDefault()
- if (!draggerInsideRef.value || mergedDisabledRef.value) return
+ if (
+ !draggerInsideRef.value ||
+ mergedDisabledRef.value ||
+ maxReachedRef.value
+ ) {
+ return
+ }
const dataTransfer = e.dataTransfer
const files = dataTransfer?.files
if (files) {
@@ -74,7 +81,7 @@ export default defineComponent({
mergedDisabledRef: Ref
+ maxReachedRef: Ref
abstractRef: Ref
cssVarsRef: Ref
submit: (fileId?: string) => void
From d60b5a4af3834c2280d17f267c63ccb0d5fd43ab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=BC=A0=E4=B9=90=E8=81=AA?=
Date: Thu, 21 Oct 2021 01:23:43 +0800
Subject: [PATCH 12/12] 2.19.11
---
CHANGELOG.en-US.md | 2 +-
CHANGELOG.zh-CN.md | 2 +-
package.json | 2 +-
src/version.ts | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/CHANGELOG.en-US.md b/CHANGELOG.en-US.md
index c81692bf5..eb91e3ade 100644
--- a/CHANGELOG.en-US.md
+++ b/CHANGELOG.en-US.md
@@ -1,6 +1,6 @@
# CHANGELOG
-## Pending
+## 2.19.11 (2021-10-21)
## Fixes
diff --git a/CHANGELOG.zh-CN.md b/CHANGELOG.zh-CN.md
index c9fe01aa8..c60a578a4 100644
--- a/CHANGELOG.zh-CN.md
+++ b/CHANGELOG.zh-CN.md
@@ -1,6 +1,6 @@
# CHANGELOG
-## Pending
+## 2.19.11 (2021-10-21)
## Fixes
diff --git a/package.json b/package.json
index 1664da095..c08bcb6ad 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "naive-ui",
- "version": "2.19.9",
+ "version": "2.19.11",
"description": "A Vue 3 Component Library. Fairly Complete, Customizable Themes, Uses TypeScript, Not Too Slow",
"main": "lib/index.js",
"module": "es/index.js",
diff --git a/src/version.ts b/src/version.ts
index 5394f6302..eacf8b7f1 100644
--- a/src/version.ts
+++ b/src/version.ts
@@ -1 +1 @@
-export default '2.19.9'
+export default '2.19.11'