knk
Version:
react components based on react
50 lines (48 loc) • 1.51 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _antd = require("antd");
/**
* 年份选择
*/
var Option = _antd.Select.Option;
var YearSelect = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
var yearSelectRef = _react.default.useRef();
yearSelectRef = ref;
var handleChange = function handleChange(value) {
var onChange = props.onChange;
onChange(value);
};
var now = new Date();
var currentYear = now.getFullYear();
var yearList = [];
var yearOffset = props.offset || 10;
if (props.after || props.before) {
var yearBefore = props.before || 0;
var yearAfter = props.after || 0;
for (var i = -yearBefore; i <= yearAfter; i++) {
yearList.push(currentYear + i);
}
} else {
for (var _i = -yearOffset; _i <= yearOffset; _i++) {
yearList.push(currentYear + _i);
}
}
return /*#__PURE__*/_react.default.createElement(_antd.Select, {
onChange: handleChange,
defaultValue: props.value,
ref: yearSelectRef
}, /*#__PURE__*/_react.default.createElement(Option, {
value: ""
}, "\u8BF7\u9009\u62E9\u5E74\u4EFD"), yearList.map(function (item) {
return /*#__PURE__*/_react.default.createElement(Option, {
value: item,
key: item
}, item);
}));
});
var _default = exports.default = YearSelect;