mirror of
https://github.com/vbenjs/vue-vben-admin.git
synced 2025-01-25 02:58:43 +08:00
feat(Form): 支持filedMapToTime
分别格式化时间,支持配置时间相关组件默认值处理开关,当组件配置valueFormat
时,默认值绑定不再是moment
对象,此时应关闭默认值的转换处理 (#2305)
* fix: 修复使用 extendSlots 时插槽参数未传递的问题。 * feat(Form): `fieldMapToTime`additional time formatting support separately. * fix(Form): Add `isHandleDateDefaultValue` property. Co-authored-by: sevth <pengqiang@vastweb>
This commit is contained in:
parent
c8b169494f
commit
bc499744c0
@ -118,9 +118,9 @@
|
||||
const getSchema = computed((): FormSchema[] => {
|
||||
const schemas: FormSchema[] = unref(schemaRef) || (unref(getProps).schemas as any);
|
||||
for (const schema of schemas) {
|
||||
const { defaultValue, component } = schema;
|
||||
const { defaultValue, component, isHandleDateDefaultValue = true } = schema;
|
||||
// handle date type
|
||||
if (defaultValue && dateItemType.includes(component)) {
|
||||
if (isHandleDateDefaultValue && defaultValue && dateItemType.includes(component)) {
|
||||
if (!Array.isArray(defaultValue)) {
|
||||
schema.defaultValue = dateUtil(defaultValue);
|
||||
} else {
|
||||
|
@ -108,8 +108,10 @@ export function useFormValues({
|
||||
|
||||
const [startTime, endTime]: string[] = values[field];
|
||||
|
||||
values[startTimeKey] = dateUtil(startTime).format(format);
|
||||
values[endTimeKey] = dateUtil(endTime).format(format);
|
||||
const [startTimeFormat, endTimeFormat] = Array.isArray(format) ? format : [format, format];
|
||||
|
||||
values[startTimeKey] = dateUtil(startTime).format(startTimeFormat);
|
||||
values[endTimeKey] = dateUtil(endTime).format(endTimeFormat);
|
||||
Reflect.deleteProperty(values, field);
|
||||
}
|
||||
|
||||
|
@ -7,7 +7,7 @@ import type { TableActionType } from '/@/components/Table/src/types/table';
|
||||
import type { CSSProperties } from 'vue';
|
||||
import type { RowProps } from 'ant-design-vue/lib/grid/Row';
|
||||
|
||||
export type FieldMapToTime = [string, [string, string], string?][];
|
||||
export type FieldMapToTime = [string, [string, string], (string | [string, string])?][];
|
||||
|
||||
export type Rule = RuleObject & {
|
||||
trigger?: 'blur' | 'change' | ['change', 'blur'];
|
||||
@ -175,6 +175,10 @@ export interface FormSchema {
|
||||
|
||||
// 默认值
|
||||
defaultValue?: any;
|
||||
|
||||
// 是否自动处理与时间相关组件的默认值
|
||||
isHandleDateDefaultValue?: boolean;
|
||||
|
||||
isAdvanced?: boolean;
|
||||
|
||||
// Matching details components
|
||||
|
Loading…
Reference in New Issue
Block a user