mobile-more
Version:
基于 antd-mobile v5 扩展移动端 UI 组件
47 lines (46 loc) • 2.44 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _antdMobile = require("antd-mobile");
var _classnames = _interopRequireDefault(require("classnames"));
var _react = _interopRequireDefault(require("react"));
var _FormArrayContext = _interopRequireDefault(require("./FormArrayContext"));
var _FormContext = _interopRequireDefault(require("./FormContext"));
var _config = require("../../config");
require("./FormItem.css");
var _excluded = ["name", "transform", "extendRules", "justify", "rules", "className"];
var prefixCls = "".concat(_config.prefixClass, "-form-item");
var BizFormItem = function BizFormItem(_ref) {
var name = _ref.name,
transform = _ref.transform,
_ref$extendRules = _ref.extendRules,
extendRules = _ref$extendRules === void 0 ? [] : _ref$extendRules,
justify = _ref.justify,
_ref$rules = _ref.rules,
rules = _ref$rules === void 0 ? [] : _ref$rules,
className = _ref.className,
restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
var _React$useContext = _react.default.useContext(_FormContext.default),
setFieldTransform = _React$useContext.setFieldTransform,
parentJustify = _React$useContext.justify;
var _React$useContext2 = _react.default.useContext(_FormArrayContext.default),
parentListNames = _React$useContext2.parentListNames;
_react.default.useEffect(function () {
if (name && typeof transform === 'function') {
setFieldTransform(name, transform, parentListNames);
}
}, [name, parentListNames, setFieldTransform, transform]);
return /*#__PURE__*/_react.default.createElement(_antdMobile.Form.Item, (0, _extends2.default)({
name: name,
validateFirst: true,
rules: [].concat((0, _toConsumableArray2.default)(rules), (0, _toConsumableArray2.default)(extendRules)),
className: (0, _classnames.default)(prefixCls, "".concat(prefixCls, "-").concat(justify || parentJustify || 'start'), className)
}, restProps));
};
var _default = exports.default = BizFormItem;