0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【React超入門】関数コンポーネントとは?初心者でもわかるやさしい解説

Last updated at Posted at 2025-06-04

はじめに

Reactを学び始めたばかりの方にとって、「関数コンポーネント」という言葉はやや難しく聞こえるかもしれません。
この記事では、Reactの関数コンポーネントとは何か?、そしてどのように使うのか?を、わかりやすく丁寧に解説していきます。


コンポーネントってなに?

コンポーネントとは「UIの部品」です。

Reactでは、以下のようなUIの構成要素を「コンポーネント」として分けて実装します。

  • ボタン
  • 入力フォーム
  • ToDoリスト
  • ヘッダーやフッター

複数のコンポーネントを組み合わせて、アプリケーション全体を構築していきます。


関数コンポーネントとは?

関数コンポーネントとは、その名のとおり関数として定義されたReactのコンポーネントでReactの基本単位であり、今のReact開発では主流の書き方です。

Hello.jsx
function Hello() {
  return <h1>Hello, world!</h1>;
}

上記のように function を使って定義し、JSX(HTMLのような構文)を return で返すだけで作れます。

クラスコンポーネントとの違い
書き方
【関数】Functionを使う【クラスコンポーネント】classを使う
状態管理
【関数】useState() などのHooks【クラスコンポーネント】this.state
React公式推奨
【関数】現在はこちら【クラスコンポーネント】 推奨されない旧式の書き方
コード量
【関数】少なめ・シンプル【クラスコンポーネント】多くて複雑になりがち

JSXとは?

JSXは「JavaScript XML」の略で、JavaScript内にHTMLライクな構文を書ける仕組みです。

title.jsx
return (
  <div>
    <p>これはJSXです!</p>
  </div>
);

注意点:

必ず1つのタグで囲む(例:

class 属性は className に書き換える必要がある

実用例:ToDoアプリを関数コンポーネントで書いてみる

TodoApp.jsx
import React, { useState } from 'react';

function TodoApp() {
  const [input, setInput] = useState('');
  const [todos, setTodos] = useState([]);

  const addTodo = () => {
    if (input.trim() === '') return;
    setTodos([...todos, input]);
    setInput('');
  };

  return (
    <div>
      <h2>My ToDo List</h2>
      <input value={input} onChange={(e) => setInput(e.target.value)} placeholder="新しいタスクを入力" />
      <button onClick={addTodo}>追加</button>
      <ul>
        {todos.map((todo, index) => (
          <li key={index}>{todo}</li>
        ))}
      </ul>
    </div>
  );
}

このように、関数の中に useState と JSX を書くだけで、簡単にToDoアプリが作れます!

ReactDOMで画面に表示する方法

index.js
import ReactDOM from 'react-dom';
import TodoApp from './TodoApp';

ReactDOM.render(<TodoApp />, document.getElementById('root'));

HTML側には、以下のように描画先となる div を用意しておきます。

html
html:index.html
<div id="root"></div>

まとめ

関数コンポーネントとは、関数で定義されたUI部品

return で JSX(見た目) を返すのが特徴

useState などの Hooks を使って状態管理が可能

現代のReact開発では、関数コンポーネントが主流

関連リンク

React公式ドキュメント

useStateを使ってみよう

最後に
この記事が「関数コンポーネントって何?」という方の疑問解消になれば嬉しいです!
いいね・フォローもお待ちしています!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?