Vue.jsはElement-uiを使用してナビゲーションメニューを実装します

Vue.jsはElement-uiを使用してナビゲーションメニューを実装します

この記事では、Element-uiを使用してvue.jsでナビゲーションメニューを実装するための具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

これを書いた理由は、この関数を書いたときに、要素は効果があるだけで、機能が実現されておらず、当時は戸惑ったからです。

まずは写真から

まず、一般的な実装の考え方を説明します。そうしないと、次のコード スニペットがわかりにくくなります。円で囲まれた左と右の部分はコピーできる要素であり、右の部分はジャンプするサブコンポーネントです。

まず、ナビゲーションメニュー用のvueファイルを作成します。ただし、このファイルはコンポーネントをインポートするだけです。左右の部分を実装するためにContainerレイアウトコンテナを使用します。左側のel-asideタグにナビゲーションメニューのコンポーネントを配置し、右側のel-mainタグに<router-view></router-view>を記述してルートジャンプを実装します。

ナビゲーションメニューファイルにElnav.vueという名前を付けました

<テンプレート>
    <div class="app">
        <el-コンテナ>
        <余談>
            <navmenu></navmenu>
        </el-aside>
        <メイン>
            <ルータービュー></ルータービュー>
        </el-main>
        </el-コンテナ>
    </div>
</テンプレート>
<スクリプト>
'./navmenu' から navmenu をインポートします
エクスポートデフォルト{
    データ() {
        戻る {
            
        }
    },
    コンポーネント:{
        ナビゲーションメニュー
    }
}
</スクリプト>
<スタイルスコープ>

</スタイル>

主にnavmenuコンポーネントを紹介します(navmenuコンポーネントは要素内のスタイルです)

ナビゲーションメニュー

default-active="$route.path"の設定とコンポーネントジャンプのインデックス値に注意してください(オプション1/2)

<テンプレート>
    <div>
        <el-行>
            <エル-コル>
                
                <el-メニュー
                    デフォルトアクティブ="$route.path"
                    ルーター
                    クラス="el-menu-vertical-demo"
                    @open="ハンドルオープン"
                    @close="ハンドルクローズ"
                >
                    <el-サブメニューインデックス="1">
                        <テンプレートスロット="タイトル">
                            <i class="el-icon-location"></i>
                            <span>ナビゲーション 1</span>
                        </テンプレート>
                        <el-メニュー項目グループ>
                            <template slot="title">グループ 1</template>
                            <el-menu-item index="/Elnav/one">オプション 1</el-menu-item>
                            <el-menu-item index="/Elnav/two">オプション 2</el-menu-item>
                        </el-menu-item-group>
                        <el-menu-item-group title="グループ 2">
                            <el-menu-item index="1-3">オプション 3</el-menu-item>
                        </el-menu-item-group>
                        <el-サブメニューインデックス="1-4">
                            <template slot="title">オプション 4</template>
                            <el-menu-item index="1-4-1">オプション 1</el-menu-item>
                        </el-サブメニュー>
                    </el-サブメニュー>
                </el-menu>
            </el-col>
        </el-row>
    </div>
</テンプレート>
<スクリプト>
エクスポートデフォルト{
  メソッド: {
    handleOpen(キー、キーパス) {
      console.log(キー、キーパス);
    },
    handleClose(キー、キーパス) {
      console.log(キー、キーパス);
    }
  },
  マウント() {
    console.log(this.$route);
  }
};
</スクリプト>
<スタイル>
</スタイル>

次はルートの設定です

{
    パス: "/Elnav",
    名前:「エルナフ」   
    コンポーネント: () =>
      インポート("../components/Elnav.vue")、
      子供たち:[
        {
          パス: "/Elnav/one",
          名前: "1",   
          コンポーネント: () =>
            インポート("../components/one.vue")
        },
        {
          パス: "/Elnav/two",
          名前:「2」、   
          コンポーネント: () =>
            インポート("../components/two.vue")
        }
      ]
  }

右側のone.vueやその他のvueファイルの内容については、自分で書いてください。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • vue+elementui+vuex+sessionStorage を使用して履歴タグ メニューを実装するためのサンプル コード
  • Vueはメニューナビゲーションを実装するためにelement-uiを使用します
  • Vue+Element UIはドロップダウンメニューのカプセル化を実現します
  • Vue+element-ui はカスタム右クリックメニューメソッドの例を追加します
  • Vue + Element UIは権限管理システムのメニュー機能実装コードを実装します

<<:  mysql の find_in_set 関数の基本的な使い方

>>:  DockerにMySQLをインストールする方法

推薦する

Tomcat10 Catalinaのログの文字化けの問題を解決する

実行環境、Idea2020バージョン、Tomcat10、実行時にTomcat CatalinaLog...

友達やグループを見つけるためのJavaScriptのLayim

現在、layuiの関係者はlayim友達検索ページの構造とスタイルを提供していません。私は個人的に非...

MySQL クエリ キャッシュのグラフィカルな説明

目次1. 原則の概要クエリキャッシュシステム変数1. クエリキャッシュを持つ2. クエリキャッシュ制...

macOS SierraにApache2.4+PHP7.0+MySQL5.7.16をインストールする

Mac システムには PHP と Apache が付属していますが、必要なバージョンではない場合があ...

MySQL 選択最適化ソリューションに関する簡単な説明

目次実生活からの例クエリが遅い最適化する方法カウント制限最大値と最小値 min&max実生活...

Linuxのpasswdコマンドの使用

1. コマンドの紹介passwd コマンドは、ユーザー パスワード、アカウント ロック、パスワードの...

要素 DateTimePicker+vue ポップアップボックスに時間のみが表示される問題を解決する

3つの知識ポイント: 1. CSS子孫セレクターhttps://www.w3school.com.c...

WeChatミニプログラムの基本チュートリアル:Echartの使用

序文まずは最終的な効果を見てみましょう。私が自分で作った小さなデモです。まずEChartsの公式サイ...

Brotli圧縮アルゴリズムを有効にするNginxの実装プロセスの詳細な説明

序文Web アプリケーションでは、トラフィックを節約し、転送データのサイズを縮小し、転送効率を向上さ...

画像ファイルの形式とその選択方法

1. どの 3 つの形式ですか?それぞれ、gif、jpg、png です。画像ファイルを最適化すること...

州と市町村の連携を簡単に実現するJavaScript

この記事では、省と市の簡単な連携を実現するためのJavaScriptの具体的なコードを参考までに紹介...

fileReader 使用時の落とし穴と解決策

目次fileReader に関する落とし穴iOS における FileReader の落とし穴 (イメ...

MySQL ストアド プロシージャで月ごとにテーブルを作成する方法

詳細には立ち入らずに、コードに直接進みましょう。一緒にコミュニケーションを取り、学びましょう。月ごと...

Vueでaxiosを簡単にカプセル化する方法

Vueにaxiosを挿入する 'axios' から axios をインポートします。...

dockerコンテナは直接実行され、pingを介してパブリックIP操作を取得します。

コンテナを通じてローカル パブリック IP アドレスを取得します。ローカル IP アドレスを使用して...