React・TypeScript環境で Material UI と styled-components の環境構築をする方法

Material-UI

こんにちはフロントエンドエンジニアのまさにょんです!

今回は、React・TypeScript環境で Material UI と styled-components の環境構築をする方法について解説していきます。

React・TypeScript環境で Material UI と styled-components の環境構築

React・TypeScriptの環境構築

React・TypeScriptの環境構築については、以前の記事にまとまっているので、そちらをご確認ください。

Material UI と styled-components の install

Material UI と styled-components の installに関しては、Material-UIの公式ドキュメントが丁寧でまとまっています。

Install Material UI, the world’s most popular React UI framework.

必要なものをすべて組み合わせた次のnpm install では、

Material-UI と Material-UI-Icon と、Material-UIに組み込まれている(?) emotion と、

Material-UI のデフォルトフォントであるRobotoフォント

そして、styled-componentsをinstallしています。

ちなみに、Docだとemotion or styled-components どちらか片方だけで installすればOKなような記述でしたが、emotion入れなかったらエラーがでました・・・

npm install @mui/material @mui/icons-material @emotion/react @emotion/styled @fontsource/roboto @mui/styled-engine-sc styled-components

Styled_Components用の型定義ファイルも別途、installが必要です。

# Styled_Components用の型定義ファイル
npm i --save-dev @types/styled-components

これで、Material UI と styled-components を使えるようになりました。

(おまけ) Material UI とは?styled-componentsとは?

Material UI とは?そのメリットとは?

Material UIは、Reactアプリケーション用のオープンソースのUIフレームワークです。

GoogleのマテリアルデザインをベースにしたUIコンポーネントを提供しており、高品質で美しく使いやすいUIを簡単に導入することができます。

Material UIには、ボタン、テキストフィールド、モーダル、スニペットなど、多くのコンポーネントが用意されています。

これらのコンポーネントを使用することで、アプリケーションの開発を効率化することができます。

また、Material UIはレスポンシブデザインに対応しており、様々なデバイスで同じUIを実現することができます。

これにより、ユーザーがスマートフォンやタブレットからアプリケーションを使用する際にも、快適なUIを提供することができます。

Material UIの主なメリットをまとめると次のとおりです。

  1. デザインの一貫性が保たれる。
    • Material UIはマテリアルデザインに従って作られているため、UIの一貫性が保たれます。
    • アプリケーション全体の見た目が統一され、UXが向上します。
  2. UIコンポーネントが豊富にある。
    • 多くのコンポーネントを簡単に利用することができ開発効率が上がります。
  3. UIコンポーネントに、レスポンシブデザインがサポートされている。
  4. コンポーネントの情報などドキュメントが充実している。

styled-componentsとは?そのメリットとは?

styled-componentsとは、CSS in JSライブラリの1つです。

CSS in JSとは、JavaScriptのコードの中にCSSのスタイルを記述することを指します。

styled-componentsでは、JavaScriptのコード内でスタイルを定義し、それをReactコンポーネントに適用することができます。

また、CSSをJSオブジェクトの形で記述するJSXでのスタイリングや、他のタイプのCSS in JSとは違い、

styled-componentsでは、CSSのsyntax(文法)をほぼそのまま使ってスタイルを定義することができます。

そのため、通常のCSSを理解していれば、よりシンプルで直感的な記述ができます。

上記のメリットをまとめると次のようなものになります。

  1. CSSファイルが不要になり、JSファイルにまとめて記述することができる。
    • 管理するファイルが分散せずにまとまるのでメンテがしやすい(保守性が高い)。
  2. コンポーネント単位でスタイリングを行うことができる。
    • スタイリングがコンポーネントに関連付けられため、メンテがしやすい(保守性が高い)。
    • 関連するコンポーネントだけのスタイルを読み込むので、レスポンスが速くなる。
  3. CSSのsyntax(文法)をほぼそのまま使ってスタイルを定義することができる。
    • CSSを理解していればより直感的に書ける。

Twitterやってます!Follow Me!

神聖グンマー帝国の逆襲🔥

神聖グンマー帝国の科学は、世界一ぃぃぃぃぃぃ!!!!!

React関連の書籍

プログラミング学習・エンジニア転職関連の情報

自宅で現役エンジニアから学べる『TechAcademy』 (エンジニア転職保証)

『GEEK JOBキャンプ』スピード転職コース(無料)

【IT道場】入校時0円! 就職目的プログラミングスクール

エンジニア転職なら100%「自社開発」求人に強い【クラウドリンク】

『techgym』 (Python特化・無料)

参考・引用

  1. Install Material UI, the world’s most popular React UI framework.
  2. Material-UI All Components
  3. Material Icons

最近の投稿