sunmao-sdk
Version:
榫卯-开箱即用赋能-sdk
53 lines (44 loc) • 1.29 kB
JavaScript
/**
* Updated by fateriddle on 2019-12-12.
* 日期组件
*/
import { DatePicker, TimePicker } from "@alifd/next";
import moment from "moment";
import dateHoc from "../../components/dateHoc";
import { getFormatForFusion } from "../../base/utils";
var MonthPicker = DatePicker.MonthPicker,
YearPicker = DatePicker.YearPicker,
WeekPicker = DatePicker.WeekPicker;
export default function date(p) {
var _p$schema$format = p.schema.format,
format = _p$schema$format === void 0 ? "dateTime" : _p$schema$format;
if (p.options.format) {
format = p.options.format;
}
var dateFormat = getFormatForFusion(format);
var picker = p.options.picker;
var onChange = function onChange(value) {
var timeValue = value ? moment(value).format(dateFormat) : "";
p.onChange(p.name, timeValue);
};
var DateComponent = DatePicker;
if (format === "time") {
DateComponent = TimePicker;
} else {
switch (picker) {
case "month":
DateComponent = MonthPicker;
break;
case "week":
DateComponent = WeekPicker;
break;
case "year":
DateComponent = YearPicker;
break;
default:
DateComponent = DatePicker;
break;
}
}
return dateHoc(p, onChange, DateComponent);
}