Vue はネストされたルーティングメソッドの例を実装します

Vue はネストされたルーティングメソッドの例を実装します

1. ネストされたルーティングはサブルーティングとも呼ばれます。実際のアプリケーションでは、通常、ネストされたコンポーネントの複数のレイヤーで構成されます。 (これは実際には単なるネスト操作であり、バックエンドのビュー ジャンプ パスと非常によく似ています)。

2. ユーザー情報コンポーネントを作成し、views/user ディレクトリに Profile.vue という名前のビュー コンポーネントを作成します。

プロフィール.vue

<テンプレート>
  <h1>仙遊_ターンオーバー1</h1>
</テンプレート>
<スクリプト>
  エクスポートデフォルト{
    名前: "ユーザーリスト"
  }
</スクリプト>
<スタイルスコープ>
</スタイル>

3. ユーザー リスト コンポーネントの views/user ディレクトリに List.vue という名前のビュー コンポーネントを作成します。

リスト.vue

<テンプレート>
  <h1>仙遊_turnaround2</h1>
</テンプレート>
<スクリプト>
  エクスポートデフォルト{
    名前: "ユーザーリスト"
  }
</スクリプト>
<スタイルスコープ>
</スタイル>

4. ホームページ ビューを変更します。Main.vue ビュー コンポーネントを変更します。ここでは、ElementUI レイアウト コンテナー コンポーネントを使用します。コードは次のとおりです。

メイン.vue

<テンプレート>
    <div>
      <el-コンテナ>
        <el-aside width="200px">
          <el-menu :default-openeds="['1']">
            <el-サブメニューインデックス="1">
              <template slot="title"><i class="el-icon-caret-right"></i>ユーザー管理</template>
              <el-メニュー項目グループ>
                <el-menu-item index="1-1">
                <!--挿入場所-->
                  <router-link to="/user/profile">個人情報</router-link>
                </el-menu-item>
                <el-menu-item index="1-2">
                <!--挿入場所-->
                  <router-link to="/user/list">ユーザーリスト</router-link>
                </el-menu-item>
              </el-menu-item-group>
            </el-サブメニュー>
            <el-サブメニューインデックス="2">
              <template slot="title"><i class="el-icon-caret-right"></i>コンテンツ管理</template>
              <el-メニュー項目グループ>
                <el-menu-item index="2-1">カテゴリー管理</el-menu-item>
                <el-menu-item index="2-2">コンテンツリスト</el-menu-item>
              </el-menu-item-group>
            </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-menu>
            </el-dropdown>
          </el-header>
          <メイン>
          <!--ここでビューを表示-->
            <ルータービュー />
          </el-main>
        </el-コンテナ>
      </el-コンテナ>
    </div>
</テンプレート>
<スクリプト>
    エクスポートデフォルト{
        名前:「メイン」
    }
</スクリプト>
<スタイル スコープ lang="scss">
  .el-ヘッダー{
    背景色: #B3C0D1;
    色: #333;
    行の高さ: 60px;
  }
  .el-aside {
    色: #333;
  }
</スタイル>

5. ネストされたルーティングを構成します。ルーター ディレクトリの index.js ルーティング構成ファイルを変更し、children を使用して main に配置してサブモジュールを記述します。コードは次のとおりです。

インデックス

//vueをインポート
'vue' から Vue をインポートします。
'vue-router' から VueRouter をインポートします。
//コンポーネントをインポートするimport Main from "../views/Main";
「../views/Login」からLoginをインポートします。
//サブモジュールをインポートしますimport UserList from "../views/user/List";
「../views/user/Profile」からUserProfileをインポートします。

//Vue.use(VueRouter) を使用します。
//エクスポート export default new VueRouter({
  ルート: [
    {
      //ログインページパス: '/main',
      コンポーネント: メイン、
      // サブモジュールの子に書き込む: [
        {
          パス: '/user/profile',
          コンポーネント: UserProfile、
        }, {
          パス: '/user/list',
          コンポーネント: UserList、
        },
      ]
    },
    //フロントページ{
      パス: '/login',
      コンポーネント: ログイン

    },
  ]
})

6. 運用結果:

7. プロジェクトの構造は次のとおりです。

8. 次に関数を追加します。

Main.vue に次のコードを追加するだけです:

          <el-サブメニューインデックス="3">
            <template slot="title"><i class="el-icon-caret-right"></i>Xianyu_ターンアラウンド管理</template>
            <el-メニュー項目グループ>
              <el-menu-item index="3-1">仙遊ファンシェ 4</el-menu-item>
              <el-menu-item index="3-2">Xianyu_Fanshe5</el-menu-item>
            </el-menu-item-group>
          </el-サブメニュー>

要約する

Vue のルート ネスト実装に関するこの記事はこれで終わりです。Vue ルート ネストに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue ルーティング vue-router の使用方法の説明
  • Vue3は現在のルーティングアドレスを取得します
  • Vueルータールーティングガードの詳細な説明
  • Vue 学習 - VueRouter ルーティングの基礎
  • Vue でのルーティングガードの具体的な使用法
  • Vueルーティングを理解するのに役立つ記事

<<:  タグが新しいページを開くかどうかという問題。主要ウェブサイトの開設状況をまとめました

>>:  MySQLでトランザクションを開始する方法

推薦する

MySQL テーブルと列のコメントの概要

コードと同様に、テーブルや列にコメントを追加して、他のユーザーがその機能を理解できるようにすることが...

MySQL のあまり知られていないソート方法

序文ORDER BY 字段名升序/降序、このソートステートメントは皆さんご存知だと思いますが、特殊な...

CPU、マシンモデル、メモリなどの情報を表示するLinuxシステム

システムメンテナンス中は、いつでも CPU 使用率を確認し、対応する情報に基づいてシステムの状態を分...

Dockerコンテナ間で通信する3つの方法

Docker コンテナは互いに分離されており、相互にアクセスできないことは誰もが知っていますが、依存...

HTMLの基礎 HTMLの構造

HTML ファイルとは何ですか? HTML は Hyper Text Markup Language...

JavaScriptの記事では、Webフォームの操作方法を説明します。

1. はじめに先ほど、ウェブページの急速な発展について紹介しました。今回は、より深い内容についてお...

JS ES6 変数分割代入の詳細な説明

目次1. 脱構築とは何か? 2. 配列の分割3. 配列モードと代入モードの統一4. デフォルト値の構...

vue-cropperプラグインは、画像キャプチャとアップロードコンポーネントのカプセル化を実現します。

vue-cropperプラグインをベースにした画像キャプチャとアップロードコンポーネントをカプセル...

vueはEle.me UIを使用してteambitionのフィルタリング機能を模倣します

目次問題の説明一般的な機能効果は次のとおりです。思考分析完全なコード要約する問題の説明Teambit...

MySQL 5.7.18 バージョンの無料インストール構成チュートリアル

MySQLはインストール版と無料インストール版に分かれていますインストール版の拡張子はmsi、無料イ...

JSはシンプルなカウンターを実装します

HTML CSS および JavaScript を使用して、プラス、マイナス、ゼロの 3 つのボタン...

MySQLでデータを削除してもディスク領域が解放されないのはなぜですか

目次問題の説明解決問題分析問題の説明MySQL で delete ステートメントを使用してデータを削...

MySQL における int の最大値の詳細な説明

導入2日前に見た問題について詳細に書きます。バイトコンピューターがバイナリに基づいていることは誰もが...

MySQLチュートリアルではストアドプロシージャを徹底的に理解します

目次1. ストアドプロシージャに関連する概念2. ストアドプロシージャの使用1) ストアドプロシージ...

Nginx 設定場所のマッチング優先順位の簡単な分析

序文Nginx 構成のサーバー ブロック内の場所は、リクエスト URI を一致させるために使用され、...