Agile育成ブログ
未来を変える喜びを
React

React(props)


Warning: count(): Parameter must be an array or an object that implements Countable in /home/xs638785/agile-software.site/public_html/wp-content/plugins/rich-table-of-content/functions.php on line 490

コンポーネントの属性をまとめて保管するためのもので、値は取り出せるが変更することはできません。

親コンポーネントから子コンポーネントに値を渡したいときにpropsを使うことで可能になります。
App.js(親コンポーネント)から引数を渡してBasic1.js(子コンポーネント)で引数にpropsを記述し、カーリーブラケットで{props.属性}表示させることができます。

propsはコンポーネントに用意されているプロパティ。コンポーネントの属性情報をまとめたオブジェクトが設定されており、このpropsから必要な値を取り出して利用することでコンポーネントから値を受け取ることができる。

親コンポーネント

子コンポーネント

const Basic1 = (props) => {
    return (
        <div>
            <h1>Hello{props.name}</h1>
        </div>
    )
}

this.props

this.props.contentはこのコンポーネント自身のpropsプロパティ内にあるcontentという値をはめ込むもの
{}で囲われた部分はJavaScriptの値を指定
JSXではタグの中にJavaScriptの変数やプロパティといった値を直接書き込むことができる

contentという属性として用意してある値がそのまま表示されている

render:function(){
  return(
  <p>{this.props.content}</p>
  );
}
});

ReactDOM.render(
  <MyComponent content="それがcontentの値です"/>
  document.getElementById('msg')
);

{{}}という記述は{}というJavaScriptの値が変数などを記述するブレース記号の中に{color: , background: }というオブジェクトのリテラルが書かれている

リテラルとはプログラム上で数値や文字列などのデータ型の値を直接記述できるように構文として定義したもの

render:function(){
  return(
  <p style={{color:this.props.styleColor,background:this.props.styleBg,padding:this.props.stylePd}}>{this.props.content}</p>

ReactDOM.render(
  <MyComponent styleColor="white" styleBg="red" stylePd="10px" content="これがコンテンツです"/>
);

You cannot copy content of this page