vue router-view のネストされた表示実装

vue router-view のネストされた表示実装

1. ルーティング構成

定数ルート = [
  {
    パス: '/'、
    名前: 'ナビゲーション 1'、
    コンポーネント: ホーム、
    子供たち:[
      {
        パス: '/customer',
        名前: '顧客'、
        // ルートレベルのコード分割
        // これにより、このルート用の別のチャンク (about.[hash].js) が生成されます
        // ルートが訪問されたときに遅延ロードされます。
        コンポーネント: () => import(/* webpackChunkName: "about" */ '../views/Customer.vue')
      },
      {
        パス: '/pageOne',
        名前: 'ページ 1'、
        コンポーネント: PageOne、

      },
      {
        パス: '/pageTwo',
        名前: 'ページ 2'、
        コンポーネント: PageTwo、
    },
    ]
  },
  {
    パス: '/navigation',
    名前: 'ナビゲーション2'、
    コンポーネント: ホーム、
    子供たち:[
      {
        パス: '/pageThree',
        名前: 'ページ3'、
        コンポーネント: PageThree、

      },
      {
        パス: '/pageFour',
        名前: 'ページ4'、
        コンポーネント: PageFour
      },
    ]
  },

2. Vueページのネスト

App.vueは最初に最初のルータービューを設定します

// ハイライトされたブロック
 <ルータービュー></ルータービュー>

Home.vueは2番目のルータービューを設定します

// ハイライトされたブロック
<テンプレート>
  <div>
  <el-container style="height: 500px; border: 1px solid #eee">
    <el-aside width="200px" style="background-color: rgb(238, 241, 246)">

      <el-メニュー>
        <el-submenu v-for="(item,index) in $router.options.routes" :index="index+''">
        <template slot="title"><i class="el-icon-sell"></i>{{item.name}}</template>
          <el-menu-item v-for="(item2,index2) in item.children" :index="index+'-'+index2">{{item2.name}}</el-menu-item>
        </el-サブメニュー>
      </el-menu>
    </el-aside>

    <el-コンテナ>
      <el-header style="text-align: right; font-size: 12px">
        <el-ドロップダウン>
          <i class="el-icon-setting" style="margin-right: 15px"></i>
          <el-dropdown-menu slot="ドロップダウン">
            <el-dropdown-item>表示</el-dropdown-item>
            <el-dropdown-item>新規</el-dropdown-item>
            <el-dropdown-item>削除</el-dropdown-item>
          </el-dropdown-menu>
        </el-dropdown>
        <span>王暁湖</span>
      </el-header>

      <メイン>
        <ルータービュー></ルータービュー>

      </el-main>
    </el-コンテナ>

  </el-コンテナ>

</div>
</テンプレート>

<スタイル>
.el-ヘッダー{
  背景色: #B3C0D1;
  色: #333;
  行の高さ: 60px;
}

.el-aside {
  色: #333;
}
</スタイル>

<スクリプト>
エクスポートデフォルト{

};
</スクリプト>

3. ネストされた関係

まず、http://localhost:8181/ にアクセスすると、ネストの最初のレベルに入り、最初のルーター ビューである Home.vue に入ります。次に、pageone にアクセスすると、Home.vue にもアクセスされます。

router-view のネストされた表示はネストされたルーティング パスに関連しているため、ルーティングでは、ナビゲーション 1 のパスの下に、それぞれページ 1 とページ 2 のルーティング パスがあることがわかります。したがって、ページ 1 にアクセスすると、親パスの Home.vue ページに最初にアクセスされます。 router-viewを配置せずにHome.vueページを追加すると、下位レベルのページは表示されません。

これで、vue router-view のネストされた表示の実装に関するこの記事は終了です。vue router-view のネストされた表示に関する関連コンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue router-viewとrouter-linkの実装原理
  • vue update router-viewの再利用コンポーネントの内容が更新されない問題を解決する
  • vue で router-view コンポーネントを使用するチュートリアル
  • Vue2はrouter-viewのデフォルトパスを設定します
  • Vueは、同じページに複数のルータービューを配置する方法を実装しています。
  • vue2.0 ルーティングでルータービューが表示されない問題の解決方法
  • vue-router で router-view がレンダリングされない問題の解決方法
  • vue ルーティング ビュー router-view のネストされたジャンプの実装

<<:  Python で pymysql モジュールを使用して MySQL データベースに接続する

>>:  CentOS7にJDK8をrpmモードでインストールする

推薦する

Linux でディスク IO を表示し、読み取りと書き込みで高い IO を占有するプロセスを見つけます。

背景 - オンラインアラートオンライン サーバーがアラームを発し、ディスク使用率 disk.util...

MySQLの暗黙的な変換問題の解決

1. 問題の説明 root@mysqldb 22:12: [xucl]> テーブル t1\G ...

Linux における SUID、SGID、SBIT の素晴らしい使い方の詳細な説明

序文Linux のファイル権限管理はとにかく素晴らしいです。SUID、SGID、SBIT の機能を確...

MySQL 5.7.20 解凍版のインストールとルートパスワードの変更に関するチュートリアル

1. MySQL アーカイブ (解凍版) をダウンロードするURL: https://downloa...

Dockerのプロセスとイメージを実行するための基本コマンドの詳細な説明

目次1. ワークフローを実行する2. ミラーリングの基本コマンド1. ワークフローを実行するDock...

Nginx リバース プロキシを使用してクロスドメイン問題を解決する方法の詳細な説明

質問前回のクロスドメイン リソース共有に関する記事では、ドメイン間で Cookie を送信する場合、...

クリックして展開し、全文を読む機能を実現する純粋なCSS

注記記事表示リストインターフェースを開発する場合、情報の基本的な概要を提供するために記事ヘッダーコン...

新しい ECMAscript オブジェクト機能の紹介

目次1. オブジェクトのプロパティ1.1 属性表記2. プロパティ名を計算する3.オブジェクトメソッ...

win10環境でDockerをインストールする実装

1. Docker公式サイトにアクセスするまず、Dockerの公式ウェブサイトにアクセスして、最新の...

実践的な経験を共有するためのコードチェックツールstylelintの紹介

目次序文文章1. stylelintをインストールする2. 設定ファイル3. stylelintを使...

DockerはClickHouseをインストールし、データテストを初期化します

クリックハウスの紹介ClickHouse は、SQL クエリを使用して分析データ レポートをリアルタ...

サーバー上で Nginx を使用して Springboot プロジェクトをデプロイする方法の詳細なチュートリアル (jar パッケージ)

1. Javaプロジェクトをjarパッケージにパッケージ化するここではMavenツールを使用します...

Linux dateコマンドの知識ポイントのまとめ

使用法: date [オプション]... [+フォーマット]または: date [-u|--utc|...

Webフロントエンドベクターアイコンの使い方

序文フロントエンドページを書くとき、小さなアイコンなどの画像を使うことが多いです。画像を使うとコード...

MySQL データベースの最適化: テーブルとデータベースのシャーディング操作の詳細な説明

この記事では、例を使用して、MySQL データベースの最適化のためのテーブルおよびデータベース シャ...