React

by alexb

HTML

<div id="app"></div>

React

class Component extends React.Component {
	componentDidUpdate(prevProps, prevState) {
  	console.log('props', this.props, 'prevProps', prevProps);
  	console.log('state', this.state, 'prevState', prevState);
  }
  
	render() {
		return <i>component</i>;
  }
}

const Shell = ({ children }) => {
	const [x, setX] = React.useState(0);
	return children(x, setX);
};

ReactDOM.render(
	<Shell>
    {(x, setX) => (
  		<div>
        <Component />
        <button onClick={() => setX(x + 1)}>Update</button>
      </div>
 	  )}
  </Shell>, document.querySelector("#app"))