UNPKG

linkmore-design

Version:

🌈 🚀lm组件库。🚀

47 lines (42 loc) 1.68 kB
import _typeof from "@babel/runtime/helpers/esm/typeof"; import React from 'react'; // 检查是否存在内容 export function getIsHas(val) { // 检查是否数字类型, 是否布尔类型 var flag = !!val || typeof val === 'number' || typeof val === 'boolean'; // 检查空对象和空数组 if (!!val && _typeof(val) === 'object') { var _Object$keys; flag = Array.isArray(val) ? !!val.length : !!((_Object$keys = Object.keys(val)) !== null && _Object$keys !== void 0 && _Object$keys.length); } return flag; } // 检查是否类组件 export function isClassComponent(component) { return typeof component === 'function' && function () { var proto = Object.getPrototypeOf(component); return proto.prototype && proto.prototype.isReactComponent; }(); } // 检查是否自定义组件 export function isExoticComponent(component) { return _typeof(component) === 'object' && _typeof(component.$$typeof) === 'symbol' && ['react.memo', 'react.forward_ref'].includes(component.$$typeof.description); } // 检查是否React组件 export function isReactComponent(component) { return isClassComponent(component) || typeof component === 'function' || isExoticComponent(component); } export var render = function render(Comp, props) { return !Comp ? null : isReactComponent(Comp) ? /*#__PURE__*/React.createElement(Comp, props) : Comp; }; /* * 将上传的图片转换为可展示的形式 * getBase64(file, (img) => {}) */ export var getBase64 = function getBase64(img, callback) { var reader = new FileReader(); reader.addEventListener('load', function () { return callback(reader.result); }); reader.readAsDataURL(img); };