目的: 実装された機能:ログイン ページを作成し、ホームページにジャンプします。ホームページには、メニュー バー、上部ナビゲーション バー、本文、および標準的な背景 Web ページ形式が含まれます。メニュー バーのさまざまなメニューをクリックすると、さまざまなコンポーネント (さまざまなページ) が表示されます。 ここではテンプレートとしてelement-uiを使用しています 前提条件: プロジェクトディレクトリでコマンドを実行します: ステップ:
1. app.vueページを修正するアプリページに <テンプレート> <div id="アプリ"> <ルータービュー></ルータービュー> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ 名前: 'アプリ'、 メソッド: { } } </スクリプト> <スタイル> </スタイル> 2. ログインページを作成する (/views/login/login.vue)ここのログインボタンはメインページに直接ジャンプし、現在のログインページは完全に置き換えられます。 ログインページコード <テンプレート> <div id="ログイン"> <el-form> <el-row :gutter="20"> <el-col class="title" :offset="9" :span="6"> <h1>ログインページ</h1> </el-col> </el-row> <el-row :gutter="20"> <el-col class="col-label" :offset="7" :span="4"> <span class="label">アカウント:</span> </el-col> <el-col :span="4"> <el-input type="text" placeholder="アカウント番号を入力してください" v-model="account.username"></el-input> </el-col> </el-row> <el-row :gutter="20"> <el-col class="col-label" :offset="7" :span="4"> <span class="label">パスワード:</span> </el-col> <el-col :span="4"> <el-input type="password" placeholder="パスワードを入力してください" v-model="account.password"></el-input> </el-col> </el-row> <el-row :gutter="20"> <el-col :offset="8" :span="8"> <span> <a href="#" rel="external nofollow" rel="external nofollow" @click="register" >アカウントを登録</a> / <a href="#" rel="external nofollow" rel="external nofollow" @click="resetPwd" >パスワードをリセット</a> </span> </el-col> </el-row> <el-row :gutter="20"> <el-col :offset="10" :span="4"> <el-button type="primary" round @click="onSubmit">ログイン</el-button> </el-col> </el-row> </el-form> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ 名前: 'ログイン', データ() { 戻る { アカウント: ユーザー名: ''、 パスワード: '' } } }, メソッド: { 登録する() { this.$メッセージ({ メッセージ: 「そのような機能は存在しないようです」 タイプ: '情報' }) }, リセットPwd() { this.$メッセージ({ メッセージ: 「来世」 タイプ: '成功' }) }, 送信() { this.$router.push('/index') } } } </スクリプト> <スタイルスコープ> #ログイン { テキスト配置: 中央; マージン: 0 自動; } .ラベル { 高さ: 40px; 行の高さ: 40px; } .col-label { テキスト配置: 右; } .el-行 { 上マージン: 15px; } .el-ボタン{ 幅: 120ピクセル; } 。タイトル { 上マージン: 10%; } </スタイル> コードを表示 2.1. router/index.jsにログインページのルーティングを追加する{ パス: '/'、 名前: 'ログイン', コンポーネント: () => import('../views/login/login.vue') }, 3. メインページを作成する (/components/index.vue)メインページは、主に <テンプレート> <el-container style="border: 1px solid #eee"> <el-aside width="200px" style="background-color: rgb(238, 241, 246)"> <el-menu :default-openeds="['1']" :router="true"> <el-サブメニューインデックス="1"> <template slot="title"><i class="el-icon-message"></i>ナビゲーション 1</template> <el-メニュー項目グループ> <template slot="title">グループ 1</template> <el-menu-item index="1-1">オプション 1</el-menu-item> <el-menu-item index="1-2">オプション 2</el-menu-item> </el-menu-item-group> </el-サブメニュー> </el-menu> </el-aside> <el-container class="table-div"> <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-コンテナ> </テンプレート> <スタイル> .el-ヘッダー{ 背景色: #B3C0D1; 色: #333; 行の高さ: 60px; } .el-aside { 色: #333; } </スタイル> <スクリプト> エクスポートデフォルト{ 名前: 'インデックス', データ() { } } </スクリプト> <スタイル> .table-div { 幅: 100%; } .el-テーブル{ 高さ: 100%; } </スタイル> 3.1. メインページルートを作成する{ パス: '/index', 名前: 'インデックス', コンポーネント: () => import('@/components/index') } この時点で、ログインページからメインページへジャンプする動作設定は完了です。効果を確認してください。プロジェクトを開始し、http://localhost:8080/#/ にアクセスします。 クリックしてログインし、ホームページに移動します 4. ホームページを変更する主に2つの部分を変更します:メニュージャンプパス、メイン構成ルーティングビュー 4.1. メニュールーティングモードを有効にし、メニュージャンプパスを変更する
4.2. ルータビューを追加するメインコンテンツを 5. 2つのサブページを作成するルーティングアドレスが正しく設定されている限り、ページはどこにでも配置できます。
{ パス: '/index', 名前: 'インデックス', component: () => import('@/components/index'), // ここでホームページのデフォルトルートジャンプのページコンポーネントを設定します children: [ // 子ルートを追加します { path: 'page', // 注意: パスの前に / を付けないでください。そうしないとジャンプしません。ここで損失を被りました。name: 'page', components: { // パラメータ名にはsが付いていることに注意してください table: () => import('@/components/first-page') // ここでのテーブルは、ホームページの router-view タグの名前と同じである必要があります。これにより、ホームページのルーティング ビューがジャンプします。3.2 を参照してください。 } }, { パス: 'テーブル', 名前: 'テーブル', コンポーネント: テーブル: () => import('@/components/first-table') } } ] } この方法で設定されたアクセスアドレスは、localhost:8080/#/index/page、localhost:8080/#/index/tableです。 設定はこれで完了です。ページにアクセスしてテストしてください。 ご覧のとおり、2 つのメニュー構成により、メインのルーティング ビューが変更され、ビューに表示されるページ コンポーネントが制御されます。設定完了 これで、vue ルーティング ビュー router-view のネストされたジャンプの詳細に関するこの記事は終了です。vue ルーティング ビュー router-view のネストされたジャンプの関連コンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQL データベースの高度なクエリとマルチテーブルクエリ
>>: Docker を使用して Redis マスター スレーブ レプリケーション クラスターを構築する
みなさんこんにちは。今日は12連休ですが、何かお買い物はしましたか?今日は「Linux View S...
この記事の例では、画像デジタル時計を実現するためのJSの具体的なコードを参考までに共有しています。具...
指定したサイズより大きいファイルを検索するには、find コマンドを使用します。 検索 / -typ...
Springboot プロジェクトを開始するには、次の 3 つの方法があります。 1. メインメソッ...
偶然にも、SQL ステートメントを異なる MySQL インスタンスで実行すると、異なる結果が生成され...
以下は、純粋な CSS で記述された画像マウスホバーズーム効果です。実際、基本原理は非常に単純です。...
高性能分散メモリオブジェクトキャッシュシステムMemcachedについては、別の記事「Windows...
目次1. ルーティング関連オブジェクト2. ルーティングオブジェクトの場所3. ルーティング構成4....
この記事は主に、MySQL インデックスの長さ制限の原理の分析を紹介します。サンプル コードを通じて...
目次1. ワークフローを実行する2. ミラーリングの基本コマンド1. ワークフローを実行するDock...
目次2. pt-pmapを使用したスタック分析3. このコラムのボトルネックポイントの分析4. パー...
目次nginxとは1. 必要な依存関係をダウンロードする2. nginxの圧縮パッケージをダウンロー...
最近、同社は CCFA 関連のいくつかの作業を行う予定で、その 1 つはカメラのリアルタイム監視を再...
1. dfコマンドを使用してディスク全体の使用量を表示します。 df コマンドは、ハードディスクのマ...
MySQL パーティションテーブルの概要MySQL の人気が高まるにつれて、MySQL に保存される...