React フックは、React に導入された最も強力な機能の 1 つです。これらにより、機能コンポーネントの状態と副作用の管理が簡素化され、コードがよりクリーンで読みやすくなります。この投稿では、よく使用される 3 つのフック、useState、useEffect、useContext について説明します。
useState フックを使用すると、機能コンポーネントをクラス コンポーネントに変換せずに状態を追加できます。
例:
const Counter = () => { const [count, setCount] = React.useState(0); return ( <div> <p>Current Count: {count}</p> <button onClick={() => setCount(count + 1)}>Increment</button> </div> ); };
仕組み:
useEffect フックは、API 呼び出し、サブスクリプション、DOM 操作などの副作用の処理に最適です。
例:
const DataFetcher = () => { const [data, setData] = React.useState(null); React.useEffect(() => { fetch('https://api.example.com/data') .then(response => response.json()) .then(data => setData(data)); }, []); // Empty array ensures this runs only once on mount return <div>{data ? JSON.stringify(data) : 'Loading...'}</div>; };
キーポイント:
useContext フックを使用すると、コンポーネント ツリーに props を渡すことなく、グローバル データへのアクセスが簡素化されます。
例:
const ThemeContext = React.createContext(); const ThemeProvider = ({ children }) => { const [theme, setTheme] = React.useState('light'); return ( <ThemeContext.Provider value={{ theme, setTheme }}> {children} </ThemeContext.Provider> ); }; const ThemeToggler = () => { const { theme, setTheme } = React.useContext(ThemeContext); return ( <button onClick={() => setTheme(theme === 'light' ? 'dark' : 'light')}> Toggle Theme: {theme} </button> ); }; // Usage in App const App = () => ( <ThemeProvider> <ThemeToggler /> </ThemeProvider> );
useContext を使用する理由
React Hooks は、機能コンポーネントをより強力かつ柔軟にします。 useState、useEffect、useContext を使用すると、クラス コンポーネントに依存せずに状態、副作用、グローバル データを簡単に管理できます。
フックは React 開発者にとって必須の学習です。実験を開始して、フックが開発プロセスをいかに簡素化するかを発見してください。
あなたのお気に入りの React Hook は何ですか?コメント欄でお知らせください!
以上がReact フックを理解する: 初心者ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。