Icon.js 505 B

1234567891011121314151617181920212223242526272829
  1. import React from 'react';
  2. import PropTypes from 'prop-types';
  3. export default class Icon extends React.Component {
  4. render() {
  5. const name = this.props.name || null;
  6. const isSpin = this.props.spin ? ' fa-spinner' : '';
  7. if (!name) {
  8. return '';
  9. }
  10. return (
  11. <i className={`fa fa-${name} ${isSpin}`} />
  12. );
  13. }
  14. }
  15. // TODO: support size and so far
  16. Icon.propTypes = {
  17. name: PropTypes.string.isRequired,
  18. spin: PropTypes.bool,
  19. };
  20. Icon.defaltProps = {
  21. spin: false,
  22. };