knk
Version:
react components based on react
61 lines • 1.82 kB
JavaScript
/**
* 数字范围输入框
*/
import React from 'react';
import { InputNumber, message, Row, Col } from 'antd';
import { debounce } from '../../../common/tool';
import PropTypes from 'prop-types';
var InputRangeNumber = /*#__PURE__*/React.forwardRef(function (props, ref) {
var inputRangeNumberRef = React.useRef();
inputRangeNumberRef = ref;
var handleChangeMin = function handleChangeMin(data) {
var value = props.value,
onChange = props.onChange;
if (value.length > 0 && data < value[0]) {
message.error('当前值不能大于最大值');
return;
}
onChange([data, value[1]]);
};
var handleChangeMax = function handleChangeMax(data) {
var value = props.value,
onChange = props.onChange;
if (value.length > 0 && data < value[0]) {
message.error('当前值不能小于最小值');
return;
}
onChange([value[0], data]);
};
var value = props.value,
disabled = props.disabled;
return /*#__PURE__*/React.createElement(Row, {
ref: inputRangeNumberRef,
gutter: 8
}, /*#__PURE__*/React.createElement(Col, {
span: 12
}, /*#__PURE__*/React.createElement(InputNumber, {
onChange: debounce(handleChangeMin, 500),
value: value[0],
disabled: disabled,
style: {
width: '100%'
},
placeholder: "\u8BF7\u8F93\u5165\u6700\u5C0F\u503C"
})), /*#__PURE__*/React.createElement(Col, {
span: 12
}, /*#__PURE__*/React.createElement(InputNumber, {
onChange: debounce(handleChangeMax, 500),
value: value[1],
disabled: disabled,
style: {
width: '100%'
},
placeholder: "\u8BF7\u8F93\u5165\u6700\u5927\u503C"
})));
});
InputRangeNumber.propTypes = {
value: PropTypes.number,
onChange: PropTypes.func,
disabled: PropTypes.bool
};
export default InputRangeNumber;