fx-form-widget
Version:
54 lines • 1.99 kB
JavaScript
import _InputNumber from "antd/es/input-number";
import _extends from "@babel/runtime/helpers/extends";
import * as React from 'react';
import { isNotNullValue } from './tools';
import './index.less';
var InputNumberWidget = function InputNumberWidget(_ref) {
var _ref$schema = _ref.schema,
schema = _ref$schema === void 0 ? {} : _ref$schema,
_ref$onChange = _ref.onChange,
onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
_ref$value = _ref.value,
value = _ref$value === void 0 ? isNotNullValue(schema.data) ? schema.data : '' : _ref$value;
var _schema$readonly = schema.readonly,
readonly = _schema$readonly === void 0 ? false : _schema$readonly,
_schema$minValue = schema.minValue,
minValue = _schema$minValue === void 0 ? undefined : _schema$minValue,
_schema$maxValue = schema.maxValue,
maxValue = _schema$maxValue === void 0 ? undefined : _schema$maxValue,
_schema$format = schema.format,
format = _schema$format === void 0 ? '' : _schema$format,
_schema$placeholder = schema.placeholder,
placeholder = _schema$placeholder === void 0 ? '请输入' : _schema$placeholder;
var defaultOptions = {};
if (schema['ui_options']) {
Object.keys(schema['ui_options']).forEach(function (key) {
defaultOptions[key] = schema['ui_options'][key];
});
}
var handleChange = function handleChange(value) {
return onChange(value);
};
var options = _extends({
min: minValue,
max: maxValue,
disabled: readonly,
placeholder: placeholder,
// addonAfter: 'M',
formatter: function formatter(value) {
return "" + value + format;
},
parser: function parser(value) {
return !!value ? value.replace(format, '') : '';
}
}, defaultOptions);
return /*#__PURE__*/React.createElement(_InputNumber, _extends({
style: {
width: "100%"
}
}, options, {
value: value,
onChange: handleChange
}));
};
export default InputNumberWidget;