libro
www.tuyano.com
初心者のためのReact入門

Reactの基本的な仕組みを理解しよう (2/4)

作成:2017-04-01 09:13
更新:2017-04-01 09:13

■アプリケーションのプログラムについて

では、作成されているソースコードを見ていきましょう。まずは、メインプログラムである「index.js」からです。下にソースコードを掲載しておきます。内容を順に説明していきましょう。

・import文について
最初に「import」といいう文がいくつも書かれていますが、これは外部のモジュールをロードするものです。このimportは、JavaScriptではあまり馴染みがないかも知れませんが、これはES6(ECMAScript 6 Edition)からサポートとなる機能です。Reactでは、「Babel」というES6対応のトランスコンパイラを使っているため、こうしたES6からの機能が利用できるようになっています。

最初に「react」「rect-dom」というモジュールをロードしていますが、これらがReactの本体となります。また、その後の「./App」「./index.css」は、ここで利用するコンポーネントとスタイルシートです。これらもまたimportでロードしておきます。

・ReactDOM.render
その後で、ReactDOMオブジェクトの「render」というメソッドを実行しています。これが、このプログラムで実行している唯一の処理です。これはコンポーネントを指定の場所にはめ込んでレンダリングを行うもので、以下のように実行します。
ReactDOM.reder( コンポーネント , 組み込み先のエレメント );

第1引数には、App.jsで定義しているAppコンポーネントを指定してあります。そして第2引数には、rootというIDのエレメントを指定しています。これにより、Appコンポーネントがrootのタグに組み込まれたコードがレンダリングされ、出力されるのです。


■JSXについて

ここでは、renderの引数に、<App />というものが指定されていました。これがAppコンポーネントのタグなのですが、「JavaScriptの引数に、直接HTMLのタグを書けるのか?」と不思議に思ったかも知れません。

これは、「JSX」という機能を利用したものです。これは、おそらく「JavaScript Expression」を略した名前なのでしょう。このJSXは、HTMLのタグをそのままJavaScriptのコード内に記述できる機能です。単独のタグでなく、タグの中に更に別のタグが組み込まれたような複雑なものも扱えます。

<App />という値を記述することで、<App />というタグで定義されているカスタムコンポーネントをrenderに指定していたのですね。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import './index.css';

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


※関連コンテンツ

「初心者のためのReact入門」に戻る