UNPKG

mobile-more

Version:

基于 antd-mobile v5 扩展移动端 UI 组件

54 lines 2.02 kB
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2"; import _defineProperty from "@babel/runtime/helpers/esm/defineProperty"; import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; var _excluded = ["className", "style", "block", "onChange", "children"]; import * as React from 'react'; import classnames from 'classnames'; import { prefixClass } from '../../config'; import "./index.css"; import ScanCardImage from './ScanCardImage'; import ScanCardIcon from './ScanCardIcon'; var prefixCls = "".concat(prefixClass, "-upload"); var BizUpload = /*#__PURE__*/React.forwardRef(function (_ref, ref) { var className = _ref.className, style = _ref.style, block = _ref.block, onChange = _ref.onChange, children = _ref.children, restProps = _objectWithoutProperties(_ref, _excluded); var inputRef = React.useRef(null); React.useImperativeHandle(ref, function () { return inputRef.current; }, [inputRef]); var handleClick = function handleClick() { inputRef.current.value = ''; inputRef.current.click(); }; var handleChange = function handleChange(e) { onChange === null || onChange === void 0 ? void 0 : onChange(e.target.files); }; return /*#__PURE__*/React.createElement("span", { className: classnames(prefixCls, _defineProperty({}, "".concat(prefixCls, "-block"), block), className), style: style, role: "button" }, /*#__PURE__*/React.createElement("input", _objectSpread(_objectSpread({ type: "file" }, restProps), {}, { onChange: handleChange, style: { display: 'none' }, ref: inputRef })), /*#__PURE__*/React.createElement("div", { className: "".concat(prefixCls, "-trigger"), onClick: handleClick }, children)); }); BizUpload.displayName = 'BizUpload'; BizUpload.ScanCardImage = ScanCardImage; BizUpload.ScanCardIcon = ScanCardIcon; /** * @deprecated 即将废弃,请使用 `BizUpload` 替代。 */ export var Upload = BizUpload; export default BizUpload;