Vueコード答え・解説

雛形コードを元に Vue.js を用いて実装していきましょう。

1. メニューの中身を v-show で管理する。

#1-1. 変数を用意する。

new Vue({
  el: '#app',
  data: {
    isShow: false, // 追加
  },
});

#1-2. メニューの中身とマスクに v-show を記載する。

<!-- v-showディレクティブを記載する -->
<!-- isShowがtrueの時のみ描画する -->
<div v-show="isShow" class="nav__inner">
  <div class="nav__icon nav__icon--times">
    <i class="fas fa-times fa-3x"></i>
  </div>
  <ul class="nav__menu">
    <li class="nav__item">
      <a class="nav__link" href="#">メニュー1</a>
    </li>
    <li class="nav__item">
      <a class="nav__link" href="#">メニュー2</a>
    </li>
    <li class="nav__item">
      <a class="nav__link" href="#">メニュー3</a>
    </li>
    <li class="nav__item">
      <a class="nav__link" href="#">メニュー4</a>
    </li>
  </ul>
</div>
<!-- v-showディレクティブを記載する -->
<div v-show="isShow" class="nav__bg"></div>

2. メニューを v-on:click で表示できるようにする。

#2-1. 関数を用意する。

#2-2. ハンバーガーアイコンに v-on:click を記載する。

#2-3. メニューを表示した時にハンバーガーアイコンを非表示にする。

3. メニューの中身を v-on:click で非表示にしましょう。

#3-1. 関数を用意する。

#3-2. v-on:click を記載する。

Last updated

Was this helpful?