feat: 时间范围选择器,设置可以返回数组或字符串形式

This commit is contained in:
GAOANG
2025-06-20 16:00:23 +08:00
parent 7b83ea7262
commit e9e4d4d90b

View File

@ -26,6 +26,10 @@
mainKey: String,
//组件在子表中的Index
tableIndex: Number,
valueType: {
default: 'Array',
type: String
}
});
const formModel = inject<any>('formModel', null);
@ -34,7 +38,7 @@
watch(
() => props.value,
(val: any) => {
modelValue.value = val || [];
modelValue.value = props.valueType == 'Array' ? val : val.split(',');
},
{
immediate: true,
@ -56,20 +60,20 @@
formModel[props.mainKey][props.tableIndex!]?.[props.startField!],
formModel[props.mainKey][props.tableIndex!]?.[props.endField!],
];
emit('update:value', emitData);
emit('update:value', props.valueType == 'Array' || !emitData ? emitData : emitData.join(','));
} else {
if (props.startField && props.endField && Object.keys(formModel).length) {
const emitData =
!formModel[props.startField] || !formModel[props.endField]
? null
: [formModel[props.startField], formModel[props.endField]];
emit('update:value', emitData);
emit('update:value', props.valueType == 'Array' || !emitData ? emitData : emitData.join(','));
}
}
});
const handleChange = (time) => {
emit('update:value', time);
emit('change', time);
emit('update:value', props.valueType == 'Array' || !time ? time : time.join(','));
emit('change', props.valueType == 'Array' || !time ? time : time.join(','));
if (formModel && props.startField && props.endField) {
if (props.mainKey) {
formModel[props.mainKey][props.tableIndex!][props.startField!] = time?.length