소스 검색

feat(Form): 为fieldMapToTime的映射类型增加时间戳转换 (#2996)

为fieldMapToTime的第三个参数增加 timestamp 和 timestampStartDay 选项

timestamp的作用: 将映射的时间格式转为时间戳

timestampStartDay的作用: 将映射的时间格式转为当天0点开始的时间戳
invalid w 1 년 전
부모
커밋
89d7a19f3f
1개의 변경된 파일11개의 추가작업 그리고 2개의 파일을 삭제
  1. 11 2
      src/components/Form/src/hooks/useFormValues.ts

+ 11 - 2
src/components/Form/src/hooks/useFormValues.ts

@@ -115,14 +115,23 @@ export function useFormValues({
 
       const [startTimeFormat, endTimeFormat] = Array.isArray(format) ? format : [format, format];
 
-      values[startTimeKey] = dateUtil(startTime).format(startTimeFormat);
-      values[endTimeKey] = dateUtil(endTime).format(endTimeFormat);
+      values[startTimeKey] = formatTime(startTime, startTimeFormat);
+      values[endTimeKey] = formatTime(endTime, endTimeFormat);
       Reflect.deleteProperty(values, field);
     }
 
     return values;
   }
 
+  function formatTime(time: string, format: string) {
+    if (format === 'timestamp') {
+      return dateUtil(time).unix();
+    } else if (format === 'timestampStartDay') {
+      return dateUtil(time).startOf('day').unix();
+    }
+    return dateUtil(time).format(format);
+  }
+
   function initDefault() {
     const schemas = unref(getSchema);
     const obj: Recordable = {};