动态菜单和动态路由的 antd pro

12345678910111213141516171819202122232425262728293031
  1. import React from 'react';
  2. import { Icon } from 'antd';
  3. import classNames from 'classnames';
  4. import styles from './index.less';
  5. const NumberInfo = ({ theme, title, subTitle, total, subTotal, status, suffix, gap, ...rest }) => (
  6. <div
  7. className={classNames(styles.numberInfo, {
  8. [styles[`numberInfo${theme}`]]: theme,
  9. })}
  10. {...rest}
  11. >
  12. {title && <div className={styles.numberInfoTitle}>{title}</div>}
  13. {subTitle && <div className={styles.numberInfoSubTitle}>{subTitle}</div>}
  14. <div className={styles.numberInfoValue} style={gap ? { marginTop: gap } : null}>
  15. <span>
  16. {total}
  17. {suffix && <em className={styles.suffix}>{suffix}</em>}
  18. </span>
  19. {(status || subTotal) && (
  20. <span className={styles.subTotal}>
  21. {subTotal}
  22. {status && <Icon type={`caret-${status}`} />}
  23. </span>
  24. )}
  25. </div>
  26. </div>
  27. );
  28. export default NumberInfo;