Reactは、シングルページアプリケーションの構築に向いたJavaScriptライブラリであり、ユーザインタフェースの構築を簡単にするための多くの機能を提供しています。その中でも、React Hooksは、関数コンポーネントで状態を管理するための手段の1つです。

この記事では、React Hooksの1つであるuseStateフックを使用して、状態を管理する方法について説明します。

useStateフックの概要

useStateフックは、関数コンポーネント内で状態を管理するためのフックです。このフックを使用すると、関数コンポーネント内で変数を宣言し、状態を保存することができます。

例えば、以下のようにuseStateフックを使用して、カウンタアプリを作成することができます。

import React, { useState } from 'react';

function Counter() {
  const [count, setCount] = useState(0);

  function increment() {
    setCount(count + 1);
  }

  return (
    <div>
      <p>Count: {count}</p>
      <button onClick={increment}>+</button>
    </div>
  );
}

export default Counter;

この例では、useStateフックを使用して、countという状態を宣言しています。useStateフックは、配列を返し、最初の要素は状態の値、2番目の要素は状態を更新するための関数です。setCount関数は、count状態を更新するために使用されます。

useStateフックの使用例

以下に、useStateフックの使用例を示します。

フォームの入力値を管理する

import React, { useState } from 'react';

function Form() {
  const [name, setName] = useState('');

  function handleChange(event) {
    setName(event.target.value);
  }

  function handleSubmit(event) {
    event.preventDefault();
    alert(`Name: ${name}`);
  }

  return (
    <form onSubmit={handleSubmit}>
      <label>
        Name:
        <input type="text" value={name} onChange={handleChange} />
      </label>
      <button type="submit">Submit</button>
    </form>
  );
}

export default Form;

この例では、useStateフックを使用して、フォームの入力値を管理しています。name状態は、input要素のvalue属性として使用されます。handleChange関数は、input要素の値が変更されたときに実行され、setName関数を使用して、name状態を更新します。

ページのタイトルを動的に更新する

import React, { useState, useEffect } from 'react';
function App() {
  const [pageTitle, setPageTitle] = useState('My App');

  useEffect(() => {
    document.title = pageTitle;
  }, [pageTitle]);

  function handleButtonClick() {
    setPageTitle('New Title');
  }

  return (
    <div>
      <h1>{pageTitle}</h1>
      <button onClick={handleButtonClick}>Change Title</button>
    </div>
  );
}

export default App;

この例では、useStateフックを使用して、ページのタイトルを管理しています。pageTitle状態は、ページのタイトルに表示されます。useEffectフックを使用して、pageTitleが変更されたときにページのタイトルを更新します。handleButtonClick関数は、pageTitle状態を更新するために使用されます。

まとめ

この記事では、React Hooksの1つであるuseStateフックを使用して、状態を管理する方法について説明しました。useStateフックは、関数コンポーネント内で状態を管理するための強力な手段であり、多くのアプリケーションで使用されています。この記事を参考にして、自分でuseStateフックを使用したアプリケーションを作成してみてください。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です