5章ReactとJSX
前章ではReactの最小単位であるコンポーネントについて学びました。Reactコンポーネントの実体は、React要素および他のコンポーネントから構成されたツリーを返す関数です。前章ではcreateElement
を使って要素を作成していましたが、実際のReactの開発現場ではじつはcreateElement
はほとんど使用されません。とくに複数のコンポーネントを合成して複雑なアプリケーションを構築する場合、関数呼び出しがネストするとコードが読めなくなってしまいます。その代わりに使用されるのがJSXです。
JSXの「JS」はもちろんJavaScriptですが「X」はXMLを表します。つまりJSXは、JavaScriptのコードの中に直接、XMLのようなタグベースの構文を記述するための言語拡張です。JSXを使えば、複数のネストしたcreateElement
の呼び出しを記述する代わりに、最終的に描画したい要素を宣言的に記述できます。
この章では、JSXを使ってReactのアプリケーションを実装する方法を学びます。
5.1 JSXを使ってReact要素を記述する
FacebookのReact開発チームは、Reactのリリースと同時にJSXをリリースしました。複雑なDOMツリーと属性を簡潔に記述するという目的で導入されたJSXですが、実際にReactのコードはHTMLやXMLと同じぐらい読みやすいものになりました。JSXではタグ名としてReact要素名(type
値)を記述します。そして、タグの属性としてプロパティ値を記述します。子要素children
は、開始タグと終了タグの間に記述されます。
子要素はいくらでもネストして記述できます。以下は<ul>
要素をJSXで記述したものです。一見HTMLのように見えますが、これはJSXです。 ...
Get Reactハンズオンラーニング 第2版 ―Webアプリケーション開発のベストプラクティス now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.