React フックを既存の React クラス コンポーネントに統合する
お気づきのように、React フックは、状態とロジックを管理するための代替アプローチを提供します。アプリケーションに反応します。ただし、フックの利点を活用するために、既存のクラスベースのコンポーネントを徐々に移行することもできます。
幸いなことに、この課題には高次コンポーネント (HOC) という解決策があります。 HOC は、フックベースの機能を挿入する関数でクラス コンポーネントをラップする方法を提供します。
フックを使用した HOC の作成
React を統合する HOC を作成するには
例:
MyDiv というクラス コンポーネントがあるとします。
class MyDiv extends React.component { constructor(){ this.state={sampleState:'hello world'} } render(){ return{this.state.sampleState}} }
フックベースの状態を MyDiv に追加するには、MyHook(Component) { を使用して HOC:
function withMyHook(Component) { return function WrappedComponent(props) { const myHookValue = useMyHook(); return; } }
HOC の統合
これで、MyDiv クラス コンポーネントを withMyHook HOC でラップできます:
class MyComponent extends React.Component { render(){ const myHookValue = this.props.myHookValue; return{myHookValue}; } } export default withMyHook(MyComponent);
この手法を使用すると、大幅なリファクタリングを行わずに、React フックを既存のクラスベースのコードベースに段階的に統合できます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3