@m-materials/form-item
Version:
基于antd中form表单,加入了自定义组件,以简化代码为模板。
79 lines (59 loc) • 2.98 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.CustomDatePicker = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _react = _interopRequireWildcard(require("react"));
var _antd = require("antd");
var _moment = _interopRequireDefault(require("moment"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var CustomDatePicker = function CustomDatePicker(props) {
var _useState = (0, _react.useState)(undefined),
dateValue = _useState[0],
setDateValue = _useState[1];
var value = props.value,
onChange = props.onChange,
format = props.format,
originOnchange = props.originOnchange;
var triggerChange = function triggerChange(changedValue) {
if (onChange) {
onChange(changedValue);
}
};
var dateChange = function dateChange(date) {
var originDate = date;
if (!date) {
// originOnchange && originOnchange(originDate,date);
triggerChange(date);
return;
}
if (format === "YYYY-MM-DD") {
date = date.format(format + " 00:00:00");
} else if (format) {
date = date.format(format);
} else {
date = date.format("YYYY-MM-DD hh:mm:ss");
}
if (!('value' in props)) {
setDateValue(date);
}
originOnchange && originOnchange(originDate, date);
triggerChange(date);
};
var tempValue = value || dateValue;
var realValue = tempValue;
if (tempValue) {
if (typeof tempValue === "string") {
realValue = (0, _moment["default"])(tempValue);
}
}
return /*#__PURE__*/_react["default"].createElement(_antd.DatePicker, (0, _extends2["default"])({}, props, {
style: {
width: '100%'
},
value: realValue,
onChange: dateChange
}));
};
exports.CustomDatePicker = CustomDatePicker;
;