UNPKG

mh-rn-component

Version:

35 lines (34 loc) 913 B
import React from 'react'; /** * todo 目前是单独处理 图标的 * @param Component 基础组件 * @param content 内容 * @param defaultProps 默认参数 * @returns */ const renderNode = (Component: any, content: any, defaultProps: any = {}) => { if (content == null || content === false) { return null; } if (React.isValidElement(content)) { return content; } if (typeof content === 'function') { return content(); } // Just in case if (content === true) { return <Component {...defaultProps} />; } if (typeof content === 'string') { if (content.length === 0) { return null; } return <Component {...defaultProps} name={content}>{content}</Component>; } if (typeof content === 'number') { return <Component {...defaultProps}>{content}</Component>; } return <Component {...defaultProps} {...content} />; }; export default renderNode;