UNPKG

ps-frame-father

Version:

An enterprise-class UI design language and React components implementation

66 lines (49 loc) 2.24 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; require("antd/es/input/style"); var _input = _interopRequireDefault(require("antd/es/input")); var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireWildcard(require("react")); var _excluded = ["value", "onChange", "isTextArea"]; // 会清除前后空格的输入框组件:支持input和textarea function BasicInput(props) { // isTextArea: true是TextArea,false是普通Input var value = props.value, onChange = props.onChange, _props$isTextArea = props.isTextArea, isTextArea = _props$isTextArea === void 0 ? false : _props$isTextArea, otherProps = (0, _objectWithoutProperties2.default)(props, _excluded); var _useState = (0, _react.useState)(''), _useState2 = (0, _slicedToArray2.default)(_useState, 2), inputValue = _useState2[0], setInputValue = _useState2[1]; var triggerChange = function triggerChange(changedValue) { onChange === null || onChange === void 0 ? void 0 : onChange(changedValue); }; var handleChange = function handleChange(e) { var val = e.target.value; setInputValue(val); triggerChange(val); }; var handleBlur = function handleBlur() { var trimVal = value || inputValue ? (value || inputValue).replace(/^\s+|\s+$/gm, '') : ''; setInputValue(trimVal); triggerChange(trimVal); }; var allProps = (0, _objectSpread2.default)({ value: value || inputValue, onChange: handleChange, onBlur: handleBlur }, otherProps); return isTextArea ? /*#__PURE__*/_react.default.createElement(_input.default.TextArea, allProps) : /*#__PURE__*/_react.default.createElement(_input.default, allProps); } ; var _default = BasicInput; exports.default = _default;