Я знаю, что это не рекомендуемый подход, но в любом случае мне интересно, как это можно сделать с помощью функциональных компонентов и хуков. Рассмотрим следующий пример:
class SimpleComponent extends Component {
method1 = () => {
console.log('Method 1');
};
method2 = () => {
console.log('Method 2');
};
renderMessage2() {
return (
<div onClick={this.method2}>Message 2</div>
);
}
render() {
return (
<div>
<div onClick={this.method1}>Message 1</div>
{this.renderMessage2()}
</div>
);
}
}
class EnhancedComponent extends SimpleComponent {
method1 = () => {
console.log('Enhanced Method 1');
};
method2 = () => {
console.log('Enhanced Method 2');
};
renderMessage2() {
return (
<div onClick={this.method2}>Enhanced Message 2</div>
);
}
}
Как мы можем добиться такого поведения с помощью функциональных компонентов и хуков?