TECH I.S.

React コンポーネント


コンポーネントは、HTML要素を返す関数のようなものです。


Reactコンポーネント

コンポーネントは、独立した再利用可能なコードです。JavaScript関数と同じ役割をしますが、独立して動作しHTMLを返します。

コンポーネントには、Class(クラス)コンポーネントとFunction(関数)コンポーネントの2種類があります。このチュートリアルでは、関数コンポーネントに集中します。

古いReactコードベースでは、Classコンポーネントが主に使用されている場合があります。React16.8で追加されたフックと一緒にFunctionコンポーネントを使用することをお勧めします。参照用にクラスコンポーネントに関するオプションのセクションがあります。


最初のコンポーネントを作成する

Reactコンポーネントを作成する場合、コンポーネントの名前しなければならない大文字で始めます。

クラスコンポーネント

クラスコンポーネントにはextends React.Componentステートメントを含める必要があります。このステートメントはReact.Componentへの継承を作成し、コンポーネントがReact.Componentの関数にアクセスできるようにします。

コンポーネントには、render()メソッドの場合、このメソッドはHTMLを返します。

Carというクラスコンポーネントを作成します。
class Car extends React.Component {   render() {     return <h2>Hi, I am a Car!</h2>;   } }

関数コンポーネント

以下は上記と同じ例ですが、代わりにFunctionコンポーネントを使用して作成されています。

関数コンポーネントもHTMLを返し、クラスコンポーネントとほぼ同じように動作しますが、関数コンポーネントははるかに少ないコードで記述でき、理解しやすく、このチュートリアルでは優先されます。

Carという関数コンポーネントを作成します。
function Car() {   return <h2>Hi, I am a Car!</h2>; }


コンポーネントのレンダリング

これで、Reactアプリケーションには<h2>要素を返すCarというコンポーネントが追加されました。

このコンポーネントをアプリケーションで使用するには、通常のHTML<Car />と同様の構文を使用します。

Car「root」要素内のコンポーネントを表示します。
const root = ReactDOM.createRoot(document.getElementById('root')); root.render(<Car />);

実行例(開発準備中) »


小道具

propsコンポーネントは、プロパティを表すとして渡すことができます。

propsは関数の引数のようなもので、属性としてコンポーネントに送信します。

propsは、次の章で詳しく説明します。

属性を使用して色をCarコンポーネントに渡し、render()関数で使用します。

function Car(props) {   return <h2>I am a {props.color} Car!</h2>; } const root = ReactDOM.createRoot(document.getElementById('root')); root.render(<Car color="red"/>);

実行例(開発準備中) »


コンポーネントのコンポーネント

他のコンポーネント内のコンポーネントを参照できます。

Garageコンポーネント内でCarコンポーネントを使用します。

function Car() {   return <h2>I am a Car!</h2>; } function Garage() {   return (     <>       <h1>Who lives in my Garage?</h1>       <Car />     </>   ); } const root = ReactDOM.createRoot(document.getElementById('root')); root.render(<Garage />);

実行例(開発準備中) »


ファイル内のコンポーネント

Reactはコードの再利用がすべてであるため、コンポーネントを個別のファイルに分割することをお勧めします。

これを行うには、新しいファイルを作成します.jsファイル拡張子を変更し、その中にコードを入れます。

ファイル名は大文字で始める必要があることに注意してください。

これが新しいファイルで、「Car.js」という名前を付けました。

function Car() {   return <h2>Hi, I am a Car!</h2>; } export default Car;

Carコンポーネントを使用できるようにするには、アプリケーションにファイルをインポートする必要があります。

これで、「Car.js」ファイルをアプリケーションにインポートして、Carコンポーネントがここで作成されたかのように表示されます。

import React from 'react'; import ReactDOM from 'react-dom/client'; import Car from './Car.js'; const root = ReactDOM.createRoot(document.getElementById('root')); root.render(<Car />);

実行例(開発準備中) »



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細