Advertisement
Guest User

Untitled

a guest
Jul 10th, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import React, {Component} from 'react';
  2. import ReactDOM from 'react-dom';
  3.  
  4.  
  5. interface TooltipPortalProps {
  6.     wrapperElement?: HTMLElement | null;
  7. }
  8.  
  9. export default class TooltipPortal extends React.PureComponent<TooltipPortalProps> {
  10.     wrapperElement: HTMLElement;
  11.  
  12.     constructor(props) {
  13.       super(props);
  14.       this.wrapperElement = document.createElement('div');
  15.     }
  16.  
  17.     componentDidMount() {
  18.       document.body.appendChild(this.wrapperElement);
  19.     }
  20.  
  21.     componentWillUnmount() {
  22.       document.body.removeChild(this.wrapperElement);
  23.     }
  24.  
  25.     render() {
  26.       return ReactDOM.createPortal(this.props.children, this.wrapperElement);
  27.     }
  28. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement