zent
Version:
一套前端设计语言和基于React的实现
22 lines (21 loc) • 1.18 kB
JavaScript
import { __assign, __rest } from "tslib";
import { jsx as _jsx } from "react/jsx-runtime";
import * as React from 'react';
import cn from 'classnames';
import { FormField } from '../Field';
import { Upload } from '../../upload';
import { warningDefaultValueProp } from '../utils';
import omit from '../../utils/omit';
function renderUpload(childProps, props) {
var value = childProps.value, onChange = childProps.onChange;
return (_jsx(Upload, __assign({}, omit(props.props, ['defaultFileList']), { fileList: value, onChange: onChange }), void 0));
}
export function FormUploadField(props) {
var _a;
var className = props.className, rest = __rest(props, ["className"]);
React.useEffect(function () {
var _a;
warningDefaultValueProp(!('defaultFileList' in ((_a = props.props) !== null && _a !== void 0 ? _a : {})), 'defaultFileList', 'FormUploadField');
}, []);
return (_jsx(FormField, __assign({}, rest, { className: cn(className, 'zent-form-upload-field'), defaultValue: (_a = props.defaultValue) !== null && _a !== void 0 ? _a : [] }, { children: function (childProps) { return renderUpload(childProps, props); } }), void 0));
}