2018-01-31 10:35:59 +01:00
|
|
|
import React from 'react'
|
|
|
|
import ReactDOM from 'react-dom'
|
|
|
|
|
|
|
|
export class Portal extends React.Component {
|
|
|
|
componentDidMount () {
|
|
|
|
this.element = document.querySelector(this.props.selector)
|
2018-11-21 09:25:00 +01:00
|
|
|
this.forceUpdate()
|
2018-01-31 10:35:59 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
render () {
|
|
|
|
if (this.element === undefined) {
|
|
|
|
return null
|
|
|
|
}
|
|
|
|
|
|
|
|
return ReactDOM.createPortal(this.props.children, this.element)
|
|
|
|
}
|
|
|
|
}
|