mobile-more
Version:
基于 antd-mobile v5 扩展移动端 UI 组件
36 lines • 1.56 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
var _excluded = ["precision", "format", "placeholder", "value", "renderLabel"];
import { DatePicker, Input } from 'antd-mobile';
import React from 'react';
import { safeDate } from 'util-helpers';
import { useConfig } from "../../BizConfigProvider";
import labelRenderer from "../utils/labelRenderer";
import { dayjs } from "../../../utils/dayjsUtil";
var SuperDatePicker = function SuperDatePicker(props) {
var _useConfig = useConfig(),
locale = _useConfig.locale;
var precision = props.precision,
format = props.format,
placeholder = props.placeholder,
outValue = props.value,
_props$renderLabel = props.renderLabel,
renderLabel = _props$renderLabel === void 0 ? function (type, data) {
return labelRenderer(type, data, locale);
} : _props$renderLabel,
restProps = _objectWithoutProperties(props, _excluded);
return /*#__PURE__*/React.createElement(DatePicker, _extends({
renderLabel: renderLabel,
precision: precision,
value: typeof outValue === 'string' ? safeDate(outValue) : outValue,
destroyOnClose: true
}, restProps), function (value) {
var fmtValue = value ? typeof format === 'function' ? format(value, precision) : dayjs(value).format(format) : value;
return /*#__PURE__*/React.createElement(Input, {
value: fmtValue || '',
placeholder: placeholder,
readOnly: true
});
});
};
export default SuperDatePicker;