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をインストールする方法

推薦する

CentOS 8 システム FTP サーバーのインストールとパッシブ モードの設定の詳細なチュートリアル

目次1. 基本を理解する2. システム環境を確認する3. ftpコマンドをインストールする[オプショ...

開発者とオペレーターが注目すべき Linux デバッグ ツール [推奨]

システム パフォーマンスの専門家である Brendan D. Gregg 氏は、LinuxCon N...

MySQLがOracleのnvlと同様の機能を持つことができるかどうかについての簡単な議論

isnullの代わりにifnullを使用するisnull は、null かどうかを判断するために使用...

MySQL での数値のフォーマットの詳細な説明

最近、仕事の都合で、MySQL で数字をフォーマットする必要がありましたが、インターネット上にはほと...

Vue コンポーネント (Vuex を含む) 間の値の転送に関する簡単な説明

目次父から息子へ:息子から父へ: Vuex を使用せずにコンポーネント間で値を渡す方法は、親から子、...

vscode で Prettier Code プラグインを使用する詳細なチュートリアル

なぜprettierを使うのですか?大企業では、フロントエンド開発コードに独自のコード標準がある場合...

MySQL が my.cnf を読み込む順序の詳細

目次MySQLがmy.cnfを読み込む順序1. mysql.server の起動方法2. mysql...

Vueシングルページアプリケーションの事前レンダリング方法の例

目次序文vue-cli 2.0 バージョンvue-cli 3.0 バージョン要約する序文vue-cl...

Ubuntu 18.04 に VMware Tools をインストールする際のエラーを解決する

1. オンライン チュートリアルによると、Ubuntu 18.04 のインストールはまだ失敗します。...

MySQLのREDOログ(リドゥログ)とロールバックログ(アンドゥログ)の詳しい説明

序文:前回の記事では、MySQL システムでよく使用されるログをいくつか説明しました。実は、トランザ...

Web デザインの経験: 独善的な Web デザイナー

1. ゴミかクラシックか? Web テクノロジーは急速に更新されており、Web サイトのインターフェ...

フロントエンドが習得すべき、複数列の等高レイアウトを実現するための CSS テクニック

1. はじめにページを作成しているときに、複数列のレイアウトに遭遇することがあります。各列の内容が異...

Mysql トランザクションで Update を実行するとテーブルがロックされますか?

2つのケース: 1. 索引あり 2. 索引なし前提条件:方法: コマンドラインを使用してシミュレー...

Tencent Cloud Server Tomcat ポートにアクセスできない場合の解決策

最近、Tencent Cloudを使用してサーバーを設定しました。使用中に、tomcatポートにアク...