Files
SaaS-lib/lib/component/form/form-util.ts

59 lines
1.3 KiB
TypeScript
Raw Normal View History

2024-05-15 17:29:42 +08:00
import { isArray, isUndefined } from 'lodash-es';
import { dateUtil } from '/nerv-lib/util/date-util';
const DATE_TYPE = [
'NsDatePicker',
'NsMonthPicker',
'NsWeekPicker',
'NsTimePicker',
'NsRangePicker',
'ADatePicker',
'AMonthPicker',
'AWeekPicker',
'ATimePicker',
'ARangePicker',
];
2024-06-25 11:21:35 +08:00
const INPUT_TYPE = ['NsInput', 'AInput', 'NsTextarea', 'ATextarea'];
2024-05-15 17:29:42 +08:00
/**
*
*/
export function isDateType(component: string | undefined) {
if (isUndefined(component)) return false;
return DATE_TYPE.includes(component);
}
/**
*
*/
export function isInputType(component: string | undefined) {
if (isUndefined(component)) return false;
return INPUT_TYPE.includes(component);
}
/**
*moment格式
* @param component
* @param value
*/
export const transformDate = (component: string, value: any, format?: any) => {
if (value && isDateType(component)) {
if (isArray(value)) {
return value.map((item) => validTime(item, format));
}
return validTime(value, format);
}
};
/**
*
* @param time
* @param format
*/
export function validTime(time: any, format: string) {
if (dateUtil(time, format, true).isValid()) {
return time;
} else {
return dateUtil(time).format(format);
}
}