目的: 実装された機能:ログイン ページを作成し、ホームページにジャンプします。ホームページには、メニュー バー、上部ナビゲーション バー、本文、および標準的な背景 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 マスター スレーブ レプリケーション クラスターを構築する
背景ブロックチェーン ログ モジュールで作業しているときに、コンテナーが実行されている場合は、ログ ...
目次背景問題分析1. 属性値はJson形式であり、Json操作関数を使用して処理する必要があります。...
MySQL レプリケーションには、SQL ステートメント ベースのレプリケーション (SBR)、行ベ...
要約すると: Readonly は入力 (テキスト/パスワード) とテキスト領域に対してのみ有効です...
1. 背景最近、友人が大規模なマップの読み込みが遅いという問題に遭遇しました。iServer のパ...
この記事では、Vueの具体的なコードを共有して、シンプルなマーキー効果を実現しています。具体的な内容...
——「MySQL in Simple Terms (第 2 版)」からのメモ数値型整数型バイト最小最...
1. オンラインテキストジェネレーターBlindTextGenerator: デザイナーにとって、こ...
OpenShift 3.9 の最新バージョンを体験する最も早い方法。準備 [root@host ~]...
1. フォワードプロキシとリバースプロキシの違いフォワード プロキシはクライアントのプロキシとして機...
目次まとめ全体的なプロセスフロントエンドページコード検証コードとログイン サービスをリクエストする ...
MySQL 高度な SQL ステートメント kgc を使用します。 テーブルlocation(Reg...
1. 自動フロー属性、要素コンテンツの長さと幅が要素自体の長さと幅を超える場合、スクロールバーが表示...
1. instanceofの使用法instanceof演算子は、コンストラクター関数のprototy...
目次背景1. 文書の説明2. 特定の用途結論背景ここで、状況について説明しましょう。親コンポーネント...