UNPKG

react-mdl

Version:

React Components for Material Design Lite

32 lines (26 loc) 854 B
import { Children, Component } from 'react'; import PropTypes from 'prop-types'; import { findDOMNode } from 'react-dom'; export default class MDLComponent extends Component { componentDidMount() { if (this.props.recursive) { window.componentHandler.upgradeElements(findDOMNode(this)); } else { window.componentHandler.upgradeElement(findDOMNode(this)); } } componentWillUnmount() { const node = findDOMNode(this); if (node) { // Not sure what causes this but sometimes there is no node here, which // causes componentHandler to throw up window.componentHandler.downgradeElements(node); } } render() { return Children.only(this.props.children); } } MDLComponent.propTypes = { recursive: PropTypes.bool };