Vue-router プログラムナビゲーションの 2 つの実装コード

Vue-router プログラムナビゲーションの 2 つの実装コード

ページをナビゲートする2つの方法

宣言型ナビゲーション: リンクをクリックしてナビゲーションを実現する方法は宣言型ナビゲーションと呼ばれます。たとえば、通常のウェブページの<a></a>リンクや、Vue の<router-link></router-link>などです。
プログラムによるナビゲーション: JavaScript APIを呼び出してナビゲーションを実装する方法をプログラムによるナビゲーションと呼びます。例: 通常のWebページのlocation.href

プログラムナビゲーションの基本的な使用方法

一般的に使用されるプログラム ナビゲーション API は次のとおりです。

this.$router.push ('ハッシュアドレス')

this.$router.go(n)

 定数ユーザー = {  
 		テンプレート: '<div><button @click="goRegister">登録ページへ移動</button></div>',  
  	メソッド: { 
  	 登録: 関数(){   
    // プログラムでルートのリダイレクトを制御する this.$router.push('/register'); 
  } 
  } 
 }

具体的な実装:

<!DOCTYPE html>
<html lang="ja">
 <ヘッド>
 <メタ文字セット="UTF-8" />
 <meta name="viewport" content="width=デバイス幅、初期スケール=1.0" />
 <meta http-equiv="X-UA-compatible" content="ie=edge" />
 <title>ドキュメント</title>
 <!-- vue ファイルをインポート-->
 <!-- <script src="./lib/vue_2.5.22.js"></script> -->
 <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
 <!-- <script src="./lib/vue-router_3.0.2.js"></script> -->
 <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
 </head>
 <本文>
 <!-- VM インスタンスによって制御される領域 -->
 <div id="アプリ">
  <router-link to="/user/1">ユーザー1</router-link>
  <router-link to="/user/2">ユーザー2</router-link>
  <router-link :to="{ name: 'user', params: {id: 3} }">User3</router-link>
  <router-link to="/register">登録</router-link>

  <!-- ルートプレースホルダー -->
  <ルータービュー></ルータービュー>
 </div>

 <スクリプト>
  定数ユーザー = {
  プロパティ: ['id', 'uname', 'age'],
  テンプレート: `<div>
   <h1>ユーザー コンポーネント -- ユーザー ID: {{id}} -- 名前: {{uname}} -- 年齢: {{age}}</h1>
   <button @click="goRegister">登録ページへ移動</button>
  </div>`,
  メソッド: {
   登録() {
   this.$router.push('/register') //プログラムによるナビゲーション}
  },
  }

  const レジスタ = {
  テンプレート: `<div>
   <h1>コンポーネントを登録する</h1>
   <button @click="goBack">戻る</button>
  </div>`,
  メソッド: {
   戻る() {
   これ.$router.go(-1)
   }
  }
  }

  // ルーティングインスタンスオブジェクトを作成する const router = new VueRouter({
  // すべてのルーティングルール ルート: [
   { パス: '/'、リダイレクト: '/user' },
   {
   // 名前付きルート名: 'user',
   パス: '/user/:id',
   コンポーネント: ユーザー、
   プロパティ: ルート => ({ uname: 'zs', age: 20, id: route.params.id })
   },
   { パス: '/register'、コンポーネント: Register }
  ]
  })

  // vmインスタンスオブジェクトを作成する const vm = new Vue({
  //制御領域を指定します el: '#app',
  データ: {}、
  //ルータインスタンスオブジェクトをマウントします// router: router
  ルーター
  })
 </スクリプト>
 </本文>
</html>

router.push() メソッドのパラメータルール

 // 文字列 (パス名) 
router.push('/home') 
// オブジェクト router.push({ path: '/home' }) 
// 名前付きルート(パラメータを渡す) 
router.push({ name: '/user', params: { userId: 123 }}) 
// クエリパラメータを使用すると、/register?uname=lisi になります。 
router.push({ パス: '/register', クエリ: { uname: 'lisi' }})

Vue-router プログラムナビゲーションの実装コードに関するこの記事はこれで終わりです。Vue-router プログラムナビゲーションの関連コンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vueルーターはパラメータを渡し、ページを更新するときにパラメータが失われる問題を解決します
  • Vue-routerルーティングの使い方
  • Vue-router ルーティングの遅延読み込みとそれを実装する 3 つの方法
  • vue-router を遅延ロードする 3 つの方法のまとめ
  • Vue-routerのハッシュモードと履歴モードの違いの詳細な説明
  • vue-routerはメタ情報メタ操作を定義します
  • Vue ルーターのインストールと使用状況の分析
  • vue3.0+vue-router+element-plusの初期練習
  • Vue ルーターにパラメータを渡すときにページを更新するとパラメータが失われる問題に対処する方法

<<:  Windows10にmysql5.7.18をインストールするチュートリアル

>>:  Linux で大きなファイルの内容を消去または削除する 5 つの方法

推薦する

Vue フロントエンド開発における keepAlive の使用方法の詳細な説明

目次序文keep-avlive フック関数keep-avliveはどのコンポーネントをキャッシュする...

JavaScript データ構造 双方向リンクリスト

単方向リンク リストは、先頭から末尾、または末尾から先頭への方向のみを走査できます。そのため、単方向...

Docker ベースの Etcd 分散デプロイメントの方法と手順

1. 環境整備1.1 基本環境NTP設定: 省略 #時間の一貫性を確保するためにNTPサービスを設定...

Vue イメージ ドラッグ アンド ドロップ ズーム コンポーネントの使用方法の詳細な説明

Vueイメージドラッグアンドドロップズームコンポーネントの具体的な使い方は参考までに。具体的な内容は...

ウェブページを作るときに知っておくべきいくつかのスキル

1. IE6 では z-index が無効です。 CSS では、階層を変更するために z-index...

MySQL 8.0.12 のインストールと設定方法のグラフィックチュートリアル

MySQL 8.0.12のインストールと設定方法を記録してみんなで共有します。 1. インストール1...

MySQL を使用してポート 3306 を開いたり変更したり、Ubuntu/Linux 環境でアクセス許可を開く

オペレーティングシステム: Ubuntu 17.04 64ビットMySQL バージョン: MySQL...

MySQL Workbench の使い方チュートリアルの詳しい説明

目次(I) Workbenchを使用してデータベースを操作する①データベースを作成する② データベー...

MySQL 8.0.15 winx64 解凍版のインストールと設定方法のグラフィックチュートリアル

この記事では、MySQL 8.0.15 winx64解凍版のインストールと設定方法を紹介します。具体...

React Contextの理解と応用についてお話ししましょう

目次序文React Context の初見コンテキストの使い方コンテキストを直接取得できるいくつかの...

Tomcatの再構成後に起動が遅くなる問題を迅速に解決

Jenkins+Tomcatサーバーの設定中に、Tomcat設定ファイルが変更され、サーバーのTom...

mysql mycat ミドルウェアの簡単な紹介

1. mycatとはエンタープライズアプリケーション開発のための完全にオープンソースの大規模データベ...

Net Core実装プロセス分析のDoc​​kerインストールと展開

1. Dockerのインストールと設定 #CentOS をインストールし、Docker パッケージを...

Dockerを使用してMySQLデータベースをインストールするDeepinの詳細な説明

まずMySQLソースをクエリするdocker 検索 mysql公式ウェブサイトにアクセスしてイメージ...