コンポーネントを作ろう! (5/5)
作成:2017-04-08 09:31
更新:2017-04-08 09:31
更新:2017-04-08 09:31
■複数のコンポーネントを使うには?
ここでは、Appコンポーネントを取り除いてMyComponentを表示しましたが、ReactDOM.renderで表示できるのは、常に1つのコンポーネントだけなのでしょうか。複数のコンポーネントを使うことはできないんでしょうか。
これは、もちろんできます。ReactDOM.renderの第1引数には、常に1つのタグしか用意することはできません。が、先ほどMyComponent.jsのrenderでやったように、複数のコンポーネントを1つのタグにまとめることですべてを表示させることができます。
下に、index.jsの修正リストを挙げておきましょう。ここでは、MyComponentを2つ、テーブルでまとめて表示させてあります。けっこうたくさんのタグが使われていますが、全体を<div>で1つにまとめているので問題なく表示できます。
ここで注意したいのは、スタイルの設定です。renderに用意するJSXのタグ内にstyle属性を追加してスタイル設定してはいけません。index.jsならば、別途用意されるindex.cssにスタイルを記述しておくようにしてください。
これは、もちろんできます。ReactDOM.renderの第1引数には、常に1つのタグしか用意することはできません。が、先ほどMyComponent.jsのrenderでやったように、複数のコンポーネントを1つのタグにまとめることですべてを表示させることができます。
下に、index.jsの修正リストを挙げておきましょう。ここでは、MyComponentを2つ、テーブルでまとめて表示させてあります。けっこうたくさんのタグが使われていますが、全体を<div>で1つにまとめているので問題なく表示できます。
ここで注意したいのは、スタイルの設定です。renderに用意するJSXのタグ内にstyle属性を追加してスタイル設定してはいけません。index.jsならば、別途用意されるindex.cssにスタイルを記述しておくようにしてください。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
import React from 'react';
import ReactDOM from 'react-dom';
import MyComponent from './MyComponent';
import './index.css';
ReactDOM.render(
<div>
<table>
<tr><td>
<MyComponent
title="My COMPONENT A"
content="これは、オリジナルコンポーネントのサンプルです。" />
</td></tr>
<tr><td>
<MyComponent
title="my component B"
content="this is mycomponent sample..." />
</td></tr>
</table>
</div>,
document.getElementById('root')
);
※関連コンテンツ