import React from 'react'; // eslint-disable-next-line import/no-extraneous-dependencies import PropTypes from 'prop-types'; export const ReactFunctionalComponent = ({ label }) => { const [clicks, setValue] = React.useState(0); return (
setValue(clicks + 1)} style={{ cursor: 'pointer' }} onKeyDown={() => undefined} role="button" >
{label}
Clicked {clicks} times.
); }; ReactFunctionalComponent.propTypes = { label: PropTypes.string.isRequired, }; export class ReactClassComponent extends React.Component { state = { clicks: 0, }; render() { const { label } = this.props; const { clicks } = this.state; return (
this.setState({ clicks: clicks + 1 })} onKeyDown={() => undefined} style={{ cursor: 'pointer' }} role="button" >
{label}
Clicked {clicks} times.
); } } ReactClassComponent.propTypes = { label: PropTypes.string.isRequired, };