何をするか?
MUI (Material-UI) ver.5 以降では、各コンポーネントのスタイル設定に便利な sx
props を使うことができます。
MUI コンポーネントをラップするようなカスタムコンポーネントを作成するときは、カスタムコンポーネント経由で sx
props を渡せるようにしておくと、利用するときにマージン設定などを簡単に行えて便利です。
実装例
下記は、sx
props を渡せるようにした CustomButton
コンポーネントの実装例です。
sx
props の値は、MUI の Button
コンポーネントにそのまま渡しています。
型情報として SxProps<Theme>
を使うところがポイントです。
これで、次のように sx
prop 流のマージン設定などを行えるようになります。
上記のカスタムコンポーネントの実装例では、sx
props の値を Button
コンポーネントに渡していますが、複数要素から構成されるカスタムコンポーネントの場合は、次のように最上のコンテナ系コンポーネント(Box
や Stack
など)の sx
props に渡した方がよいでしょう。
関連記事