🐉 Dialog APIとprops
作成日: 2022/02/14
1

今日、Dialog APIを調べていてやっとpropsと親コンポーネントと子コンポーネントの関係性を理解し納得した。キッカケは教材内でモーダルを実装するのにMaterial-UI(ライブラリ)使いましょうねー、というのがあって。
modal.png
↑こういうの。いやライブラリ使わなくてもJavaScriptとCSSで簡単に実装できるんですが。で、いきなり下記のように記述してくださればOKなので、みたいなことが書いてあったのだが

<Dialog
  open={isOpen}
  onClose={onClose}
  maxWidth='xs'
>
~省略~
</Dialog>

openって何。
onCloseってナニ。
maxWidthなんて定義しとらんぞ。
...で、件のライブラリのDialog APIを調べてみたら... 居ました。
props.png
なるほど、こういうのをpropsというのか。

// 親コンポーネントApp.js
import Title from './components/Title'; // 子コンポーネントTitle呼びます。
export const TestApp = () => (
  <Title title="表示させたいテキスト" />
);

// 子コンポーネント./components/Title.js
export const Title = () => {
  return (
    <Text>{this.props.title}</Text>
  )
}

// 実行結果
<Text>表示させたいテキスト</Text>

Props = コンポーネント利用時に属性として設定ができる値 でした。納得。
参考資料:
propsとstateのイメージをつかむ【はじめてのReact】
React初心者のための Material-UI 【Dialogの使い方編】


JavaScriptとSassと英語が好き。