CopyButton.js 847 B

1234567891011121314151617181920212223242526272829
  1. import React from 'react';
  2. import ClipboardButton from 'react-clipboard.js';
  3. export default class CopyButton extends React.Component {
  4. showToolTip() {
  5. $('#btnCopy').tooltip('show');
  6. setTimeout(() => {
  7. $('#btnCopy').tooltip('hide');
  8. }, 1000);
  9. }
  10. render() {
  11. return (
  12. <ClipboardButton className={this.props.buttonClassName}
  13. button-id="btnCopy" button-data-toggle="tooltip" button-title="copied!" button-data-placement="bottom" button-data-trigger="manual"
  14. data-clipboard-text={this.props.text} onSuccess={this.showToolTip}>
  15. <i className={this.props.iconClassName}></i>
  16. </ClipboardButton>
  17. );
  18. }
  19. }
  20. CopyButton.propTypes = {
  21. text: React.PropTypes.string.isRequired,
  22. buttonClassName: React.PropTypes.string.isRequired,
  23. iconClassName: React.PropTypes.string.isRequired,
  24. };