Check


プログラミングが無料で学べるYouTubeチャンネルを配信中!

RubyやPython、PHPやReactなど様々なプログラミング言語のチュートリアル動画が充実!

チャンネル登録はこちら

React

【React】ヘッダーにMaterial UI(MUI)でハンバーガーメニューを実装|ポートフォリオサイトの作り方

React ハンバーガーメニュー

動画で解説を見る



開発環境

  • Visual Studio Code:version 1.73.0
  • OS:Windows10
  • Node.js:v18.14.0
  • npm:9.3.1
  • react:18.2.0
  • react-dom:18.2.0
  • react-router-dom:6.8.2
  • typescript:4.9.5
  • mui:5.11.10
  • mui/icons-material:5.11.11

ヘッダーにMaterial UI(MUI)でハンバーガーメニューを実装する手順

ヘッダーにMaterial UI(MUI)でハンバーガーメニューを実装する手順を解説していきます。

Material UI(MUI)のアイコンをインストール

まずはMaterial UI(MUI)のアイコンをインストールします。

Material UI v5 では、アイコンの使用方法が以前のバージョンと異なっています。

以前のバージョンではSVG アイコンでしたが、v5からはFont Awesome アイコンが採用されており、必要なアイコンコンポーネントをインポートすることによってコンポーネント内で使用することができます。

ヘッダーのナビゲーションバーをレスポンシブにする

次にヘッダーのナビゲーションバーをレスポンシブにしていきます。

まずはメニュー用のハンバーガーアイコンをインポートしておきます。

そしてハンバーガーメニューのボタンはmdサイズで非表示、xsサイズで表示されるようにdisplayのプロパティを割り当てていきます。

また、ナビゲーション部分に関しては逆にxsサイズで非表示、mdサイズで表示されるようにdisplayのプロパティを割り当てることにより、レスポンシブに切り替えることができます。

useStateによる状態管理をする

次にuseStateによる状態管理をするためのメソッドを定義していきます。

useStateをインポートしておきます。

「open,setOpen」という変数の初期値はfalseですが、handleDrawerOpenでは「setOpen」をtrue、handleDrawerCloseでは「setOpen」をfalseにすることにより、ハンバーガーメニューの開閉を管理します。

ハンバーガーメニューのドロワー部分を作成

次にハンバーガーメニューのドロワー部分を作成します。

閉じるボタンのアイコンとMaterial UI(MUI)のDrawerをインポートします。

まずはクリックされたら「setOpne」がtureになるようクリックイベントにはhandleDrawerOpenを割り当てておきます。

そしてMaterial UI(MUI)のDrawer内にナビゲーション部分を作成し、クリックされたら「setOpne」がfalseになるようhandleDrawerCloseを割り当てておきます。

あとはDrawerのopenプロパティに割り当てたopenという変数がtrueとfalseで切り替わることにより、ドロワーの開閉を管理することができます。

おわりに

ReactでヘッダーにMaterial UI(MUI)でハンバーガーメニューを実装するための手順を解説してきましたが、いかがだったでしょうか。

サイト訪問者に気持ちよくサイトをみてもらにヘッダーのナビゲーションはとても重要であり、ナビゲーションのデザインや仕様にこだわっているエンジニアもかなり多いかと思います。

是非、魅力的なヘッダーのナビゲーションを作っていきましょう。

Check


プログラミングが無料で学べるYouTubeチャンネルを配信中!

RubyやPython、PHPやReactなど様々なプログラミング言語のチュートリアル動画が充実!

チャンネル登録はこちら

-React