実例解説Reactコンポーネント
この章では、コンポーネントの使い方について、私たちのアプリケーションをより簡単に管理できるようにします。
次に、出力をカプセル化します。「ハローワールド!」のコンポーネントの名前はハローMessageです。
1、関数を使ってコンポーネントを定義できます。
オリジナルのHTML要素名は小文字で始まるが、カスタムのReactクラス名は大文字で始まる。例えばハローMessageはハローMessageとは書くことができない。この他にも、コンポーネント類はトップレベルのラベルしか含まれていないので、エラーが発生します。
パラメータをコンポーネントに渡す必要がある場合、this.propsオブジェクトを使用することができます。例は以下の通りです。
属性を追加する場合、クラスの属性はクラスNameと書く必要があります。for属性はhttml Forと書く必要があります。これはクラスとforはJavaScriptの保留字です。
コンポジット
複数のコンポーネントを作ることによって一つのコンポーネントを合成し、すなわちコンポーネントの異なる機能点を分離することができます。
以下の例では、ウェブサイトの名前とURLを出力するコンポーネントを実現しました。
以上は例を挙げてReactコンポーネントの詳細を説明しました。Reactコンポーネントに関する資料は他の関連記事に注目してください。
次に、出力をカプセル化します。「ハローワールド!」のコンポーネントの名前はハローMessageです。
function HelloMessage(props) {
return <h1>Hello World!</h1>;
}
const element = <HelloMessage />;
ReactDOM.render(
element,
document.getElementById('example')
);
インスタンス解析:1、関数を使ってコンポーネントを定義できます。
function HelloMessage(props) {
return <h1>Hello World!</h1>;
}
ES 6クラスを使ってコンポーネントを定義することもできます。
class Welcome extends React.Component {
render() {
return <h1>Hello World!</h1>;
}
}
2、const element = <HelloMessage />
は、ユーザによってカスタマイズされたコンポーネントである。オリジナルのHTML要素名は小文字で始まるが、カスタムのReactクラス名は大文字で始まる。例えばハローMessageはハローMessageとは書くことができない。この他にも、コンポーネント類はトップレベルのラベルしか含まれていないので、エラーが発生します。
パラメータをコンポーネントに渡す必要がある場合、this.propsオブジェクトを使用することができます。例は以下の通りです。
function HelloMessage(props) {
return <h1>Hello {props.name}!</h1>;
}
const element = <HelloMessage name="jb51"/>;
ReactDOM.render(
element,
document.getElementById('example')
);
上記の例ではname属性はprops.nameによって取得される。属性を追加する場合、クラスの属性はクラスNameと書く必要があります。for属性はhttml Forと書く必要があります。これはクラスとforはJavaScriptの保留字です。
コンポジット
複数のコンポーネントを作ることによって一つのコンポーネントを合成し、すなわちコンポーネントの異なる機能点を分離することができます。
以下の例では、ウェブサイトの名前とURLを出力するコンポーネントを実現しました。
function Name(props) {
return <h1> :{props.name}</h1>;
}
function Url(props) {
return <h1> :{props.url}</h1>;
}
function Nickname(props) {
return <h1> :{props.nickname}</h1>;
}
function App() {
return (
<div>
<Name name=" " />
<Url url="https://www.jb51.net/" />
<Nickname nickname="jb51" />
</div>
);
}
ReactDOM.render(
<App />,
document.getElementById('example')
);
出力結果:以上は例を挙げてReactコンポーネントの詳細を説明しました。Reactコンポーネントに関する資料は他の関連記事に注目してください。