UNPKG

z-react-ui

Version:

z-react-ui,是一款基于 Dumi,由 React + TypeScript 开发的组件库 🎉。

53 lines (46 loc) 1.79 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireWildcard(require("react")); var _config = require("@/_config"); var _hooks = require("@/_hooks"); // #----------- 上: ts类型定义 ----------- 分割线 ----------- 下: JS代码 ----------- var FileUpload = function FileUpload(_ref) { var onUploadFile = _ref.onUploadFile; var prefixCls = (0, _hooks.usePrefixCls)('chat-file-upload'); var inputRef = (0, _react.useRef)(); var handleFileBtn = (0, _react.useCallback)(function (e, path) { var target = e.target; target.src = "".concat(_config.chatPrefix, "/").concat(path); }, []); var onFileUpload = (0, _react.useCallback)(function (e) { handleFileBtn(e, 'toolbar_files_down@2x.png'); inputRef.current.click(); }, [handleFileBtn]); var handleChange = (0, _react.useCallback)(function (e) { onUploadFile(e); }, [onUploadFile]); return /*#__PURE__*/_react.default.createElement("div", { className: prefixCls }, /*#__PURE__*/_react.default.createElement("img", { className: "".concat(prefixCls, "-img"), onClick: onFileUpload, onMouseEnter: function onMouseEnter(e) { return handleFileBtn(e, 'toolbar_files_hover@2x.png'); }, onMouseLeave: function onMouseLeave(e) { return handleFileBtn(e, 'toolbar_files_normal@2x.png'); }, src: "".concat(_config.chatPrefix, "/toolbar_files_normal@2x.png") }), /*#__PURE__*/_react.default.createElement("input", { type: "file", className: "".concat(prefixCls, "-file"), ref: inputRef, onChange: handleChange })); }; var _default = FileUpload; exports.default = _default;