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モードでインストールする

推薦する

htmlダウンロード機能の詳しい説明

新しいプロジェクトは基本的に終了しました。フロントエンドとバックエンドを分離して統合を完了したのは初...

NODE.JS を使用して WEBSERVER を作成する手順

目次Node.jsとはNodeJSをインストールするNode を使用して Hello World を...

IDEA は Docker プラグインを使用します (初心者向けチュートリアル)

目次例示する1. Dockerリモートアクセスを有効にする2. Dockerに接続する3. イメージ...

js を使用して XML オンライン エディターを作成する例

目次序文オンラインXMLエディタの必要性テクノロジー事前調査ビジュアルプログラミングVSCODEプラ...

Echarts バー水平棒グラフのサンプルコード

目次横棒グラフデータとスタイルを動的に更新するeChartsの幅と高さの適応の問題を解決する縦棒グラ...

vue3+vite プロジェクトで svg を使用する方法の詳細なグラフィック説明

今日、vue3+viteプロジェクトの実践で、svgを使用する場合、以前の記述方法が使用できないこと...

MySql でデータの重複挿入を回避する 3 つの方法

序文MySql で主キーの競合または一意キーの競合が発生した場合、挿入方法に応じてエラーを回避するた...

Windows 10 に付属する仮想マシンのネットワークを設定するための詳細な手順 (グラフィック チュートリアル)

1. サーバー ホストをクリックし、右側の操作リストで [仮想スイッチ管理] をクリックして、仮想...

2048 ゲームを実装するためのネイティブ js

2048ミニゲーム、参考までに具体的な内容は以下のとおりですまず、2048ゲームは16のグリッドか...

CSS3 アニメーション ボールローリング JS コントロールアニメーション一時停止

CSS3 はアニメーションを作成でき、多くの Web ページのアニメーション画像、Flash アニメ...

Python スクリプトを Ubuntu で直接実行する方法

翻訳プログラムを例に挙げてみます。前回はWindowsでのアプリケーションのパッケージ化についてお話...

MySQLは重複しないデータ挿入を実装するためにUNIQUEを使用する

SQL UNIQUE制約UNIQUE 制約は、データベース テーブル内の各レコードを一意に識別します...

Vueプロジェクトでスケルトンスクリーンを使用する方法

現在、アプリケーション開発は基本的にフロントエンドとバックエンドに分離されています。主流のフロントエ...

JS 内の Json 文字列 + Cookie + ローカルストレージ

目次1.Json文字列1.1Json構文1.2 例2. クッキー2.1 使い方は? 3. ローカルス...

JavaScript における一般的な配列操作

目次1. 連結() 2. 結合() 3. プッシュ() 5. シフト() 6. シフト解除() 7....