diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3b15287d0..d361b960f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,20 @@
+## [2.11.4](https://github.com/vbenjs/vue-vben-admin/compare/v2.11.3...v2.11.4) (2024-05-06)
+
+### Bug Fixes
+
+- **BasicForm:** 修复 SetFieldsValue 设置值时,会将 Number 类型的值转为 string ([#3802](https://github.com/vbenjs/vue-vben-admin/issues/3802)) ([08a1f7b](https://github.com/vbenjs/vue-vben-admin/commit/08a1f7b682114bdf758ea9dcd4b84daea0d5f196))
+- **breadcrumb:** if hideChildrenInmenu is true & hidden dropdown-menu ([#3807](https://github.com/vbenjs/vue-vben-admin/issues/3807)) ([2af93c9](https://github.com/vbenjs/vue-vben-admin/commit/2af93c9f5307ffdbb29653303177b2c8631e789a))
+- **docker:** update node version of dockerfile ([#3788](https://github.com/vbenjs/vue-vben-admin/issues/3788)) ([338d077](https://github.com/vbenjs/vue-vben-admin/commit/338d077ab3669ef116e7406c586fe2cb59952022))
+- **imgupload:** resultField causing with error display && setField uncertain ([#3798](https://github.com/vbenjs/vue-vben-admin/issues/3798)) ([06018ad](https://github.com/vbenjs/vue-vben-admin/commit/06018add798a6c23ebbfa91a3f4d625c2a57e458))
+
+### Features
+
+- **upload->previewColumns:** Adapt functions && chore upload demo ([#3799](https://github.com/vbenjs/vue-vben-admin/issues/3799)) ([29ef0d3](https://github.com/vbenjs/vue-vben-admin/commit/29ef0d39157957146015e1b914c26d2b6d1bf25e))
+
+### Performance Improvements
+
+- **util:** remove handleInputNumberValue ([#3806](https://github.com/vbenjs/vue-vben-admin/issues/3806)) ([ba5b8f8](https://github.com/vbenjs/vue-vben-admin/commit/ba5b8f8506bb9d052ce2705653f255f0401963e8))
+
## [2.11.3](https://github.com/vbenjs/vue-vben-admin/compare/v2.11.2...v2.11.3) (2024-04-24)
### Bug Fixes
diff --git a/package.json b/package.json
index 8f6b1fb44..f46c0edd4 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "vben-admin",
- "version": "2.11.3",
+ "version": "2.11.4",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": {
"url": "https://github.com/vbenjs/vue-vben-admin/issues"
diff --git a/src/components/Form/src/hooks/useFormEvents.ts b/src/components/Form/src/hooks/useFormEvents.ts
index 2c3d9d28f..ec9b694ad 100644
--- a/src/components/Form/src/hooks/useFormEvents.ts
+++ b/src/components/Form/src/hooks/useFormEvents.ts
@@ -4,11 +4,7 @@ import type { NamePath } from 'ant-design-vue/lib/form/interface';
import { unref, toRaw, nextTick } from 'vue';
import { isArray, isFunction, isObject, isString, isDef, isNil, isNumber } from '@/utils/is';
import { deepMerge } from '@/utils';
-import {
- dateItemType,
- defaultValueComponents,
- isIncludeSimpleComponents,
-} from '../helper';
+import { dateItemType, defaultValueComponents, isIncludeSimpleComponents } from '../helper';
import { dateUtil } from '@/utils/dateUtil';
import { cloneDeep, has, uniqBy, get } from 'lodash-es';
import { error } from '@/utils/log';
@@ -76,7 +72,7 @@ export function useFormEvents({
const validKeys: string[] = [];
fields.forEach((key) => {
const schema = unref(getSchema).find((item) => item.field === key);
- let value = get(values, key);
+ const value = get(values, key);
const hasKey = has(values, key);
const { componentProps } = schema || {};
let _props = componentProps as any;
diff --git a/src/components/Table/src/BasicTable.vue b/src/components/Table/src/BasicTable.vue
index d23af5449..0e23298bc 100644
--- a/src/components/Table/src/BasicTable.vue
+++ b/src/components/Table/src/BasicTable.vue
@@ -32,13 +32,9 @@
-
-
-
-
diff --git a/src/components/Table/src/components/editable/EditableCell.vue b/src/components/Table/src/components/editable/EditableCell.vue
index 2445d907c..6d998bb4c 100644
--- a/src/components/Table/src/components/editable/EditableCell.vue
+++ b/src/components/Table/src/components/editable/EditableCell.vue
@@ -369,11 +369,9 @@
if (!props.record.editValueRefs) props.record.editValueRefs = {};
props.record.editValueRefs[props.column.dataIndex as any] = currentValueRef;
}
- /* eslint-disable */
props.record.onCancelEdit = () => {
isArray(props.record?.cancelCbs) && props.record?.cancelCbs.forEach((fn) => fn());
};
- /* eslint-disable */
props.record.onSubmitEdit = async () => {
if (isArray(props.record?.submitCbs)) {
if (!props.record?.onValid?.()) return;
@@ -508,7 +506,7 @@
}
.@{prefix-cls} {
position: relative;
- min-height: 24px; //设置高度让其始终可被hover
+ min-height: 24px; // 设置高度让其始终可被hover
&__wrapper {
display: flex;
diff --git a/src/components/Upload/src/components/ImageUpload.vue b/src/components/Upload/src/components/ImageUpload.vue
index 4c86c4993..74acd21a0 100644
--- a/src/components/Upload/src/components/ImageUpload.vue
+++ b/src/components/Upload/src/components/ImageUpload.vue
@@ -9,6 +9,7 @@
:maxCount="maxNumber"
:before-upload="beforeUpload"
:custom-request="customRequest"
+ :disabled="disabled"
@preview="handlePreview"
@remove="handleRemove"
>
@@ -193,8 +194,8 @@
const list = (fileList.value || [])
.filter((item) => item?.status === UploadResultStatus.DONE)
.map((item: any) => {
- if(item?.response && props?.resultField){
- return item?.response
+ if (item?.response && props?.resultField) {
+ return item?.response;
}
return item?.url || item?.response?.url;
});
diff --git a/src/components/Upload/src/components/UploadPreviewModal.vue b/src/components/Upload/src/components/UploadPreviewModal.vue
index c2c9e1630..5ecd9623f 100644
--- a/src/components/Upload/src/components/UploadPreviewModal.vue
+++ b/src/components/Upload/src/components/UploadPreviewModal.vue
@@ -19,10 +19,10 @@
import { downloadByUrl } from '@/utils/file/download';
import { createPreviewColumns, createPreviewActionColumn } from './data';
import { useI18n } from '@/hooks/web/useI18n';
- import { isArray } from '@/utils/is';
+ import { isArray, isFunction } from '@/utils/is';
import { BasicColumn } from '@/components/Table';
- import { isFunction } from '@/utils/is';
import { useMessage } from '@/hooks/web/useMessage';
+
const { createMessage } = useMessage();
const props = defineProps(previewProps);
diff --git a/src/components/Upload/src/props.ts b/src/components/Upload/src/props.ts
index 704f412a0..3d4d480c8 100644
--- a/src/components/Upload/src/props.ts
+++ b/src/components/Upload/src/props.ts
@@ -15,12 +15,14 @@ type SortableOptions = Merge<
}
>;
type previewColumnsFnType = {
- handleRemove:(record:Record,key:string)=>any,
- handleAdd:(record:Record,key:string)=>any,
-}
+ handleRemove: (record: Record, key: string) => any;
+ handleAdd: (record: Record, key: string) => any;
+};
export const previewType = {
previewColumns: {
- type: [Array,Function] as PropType BasicColumn[])>,
+ type: [Array, Function] as PropType<
+ BasicColumn[] | ((arg: previewColumnsFnType) => BasicColumn[])
+ >,
required: false,
},
beforePreviewData: {
diff --git a/src/layouts/default/header/components/Breadcrumb.vue b/src/layouts/default/header/components/Breadcrumb.vue
index c9ff9b177..e1e317185 100644
--- a/src/layouts/default/header/components/Breadcrumb.vue
+++ b/src/layouts/default/header/components/Breadcrumb.vue
@@ -10,7 +10,7 @@
{{ t((routeItem.meta.title || routeItem.name) as string) }}
-
+
-
-
diff --git a/src/views/demo/comp/upload/index.vue b/src/views/demo/comp/upload/index.vue
index e321a2db0..4aedd1fe9 100644
--- a/src/views/demo/comp/upload/index.vue
+++ b/src/views/demo/comp/upload/index.vue
@@ -1,9 +1,9 @@
-
-
-
-
+
+
+
+
+