反応クラスコンポーネントでフックを使う方法
3878 ワード
あなたはおそらく考えている、なぜ地球上の誰がクラスベースのコンポーネント、2つの単語、レガシープロジェクトのフックを使用するでしょう.
フックはクールで機能的なコンポーネントですが、クラスベースのコンポーネントのロードを持っている4年古いプロジェクトに取り組んでいる場合は、関数ベースのコンポーネントにそれらを変換する時間がありません.さらに、新しいライブラリの負荷はフックを使用するだけです.
ですから、レガシープロジェクトを最新の状態にしたいなら、これは本当に役立つテクニックです.
私はすべての信用を取ることができて、私の巧妙な心がこれをすべて考え出したと言うことができました、しかし、私はここで反応Routerウェブサイトでそれを実際に見ました
彼らは複数のフックを追加する上で良い例があります.
とにかく、私はあなたがこれが役に立つと思います.
フックはクールで機能的なコンポーネントですが、クラスベースのコンポーネントのロードを持っている4年古いプロジェクトに取り組んでいる場合は、関数ベースのコンポーネントにそれらを変換する時間がありません.さらに、新しいライブラリの負荷はフックを使用するだけです.
ですから、レガシープロジェクトを最新の状態にしたいなら、これは本当に役立つテクニックです.
暗号
import { Component } from 'react';
import { useNavigate } from 'react-router-dom';
class Login extends Component {
render() {
return (
<>
<p>My awesome component</p>
<button type="button" onClick={() => this.#handleClick()}>
Click here
</button>
</>
);
}
#handleClick() {
this.props.navigate('/dashboard');
}
}
function addHookTo(Component) {
function CompWithHook(props) {
const navigate = useNavigate();
return <Component {...props} navigate={navigate} />;
}
return CompWithHook;
}
export default addHookTo(Login);
Aaaaaandそれはそれです!信用がある信用
私はすべての信用を取ることができて、私の巧妙な心がこれをすべて考え出したと言うことができました、しかし、私はここで反応Routerウェブサイトでそれを実際に見ました
彼らは複数のフックを追加する上で良い例があります.
とにかく、私はあなたがこれが役に立つと思います.
Reference
この問題について(反応クラスコンポーネントでフックを使う方法), 我々は、より多くの情報をここで見つけました https://dev.to/richardbray/how-to-use-hooks-in-react-class-components-4lhpテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol