import React, {Component} from 'react'; import {placements} from './placements'; import Trigger from '../rc-trigger'; import {ITooltip} from './PropsType'; import {observer} from "mobx-react"; @observer export default class Tooltip extends Component { static defaultProps = { prefixCls: 'rc-tooltip', mouseEnterDelay: 0, destroyTooltipOnHide: false, mouseLeaveDelay: 0.1, align: {}, placement: 'right', trigger: ['hover'], arrowContent: null, }; getPopupElement() { const {arrowContent, overlay, prefixCls} = this.props; return ([
{arrowContent}
,
{typeof overlay === 'function' ? overlay() : overlay}
, ]); } getPopupDomNode() { const trigger: any = this.refs.trigger; return trigger.getPopupDomNode(); } render() { const { overlayClassName, trigger, mouseEnterDelay, mouseLeaveDelay, overlayStyle, prefixCls, children, onVisibleChange, transitionName, animation, placement, align, destroyTooltipOnHide, defaultVisible, getTooltipContainer, ...restProps, } = this.props; const extraProps: any = {...restProps}; if ('visible' in this.props) { extraProps.popupVisible = this.props.visible; } return ( {children} ); } }