UNPKG

570 BJSXView Raw
1import React from 'react'
2
3const DefaultWrapper = (props) => (
4 <div>{props.children}</div>
5)
6
7class ComponentRenderer extends React.Component {
8 constructor(props) {
9 super(props)
10 this.Wrapper = window._CustomWrapper || DefaultWrapper
11 this.state = {
12 hasError: false,
13 error: null,
14 }
15 }
16
17 componentDidCatch(error) {
18 console.log(error.message)
19 }
20
21 render() {
22 const { children } = this.props
23 return (
24 <this.Wrapper {...this.props}>
25 {children}
26 </this.Wrapper>
27 )
28 }
29}
30
31export default ComponentRenderer