Vueブラウザが監視を再開するための具体的な手順

Vueブラウザが監視を再開するための具体的な手順

序文

ページを共有するときに、ブラウザの戻るボタンをクリックしてプロジェクトのホームページに戻り、訪問回数を増やすことを期待します。

ブラウザの戻るボタンを監視し、デフォルトのイベントを防止する必要があります。

具体的な手順は次のとおりです。

1. マウントが完了したら、ブラウザがpopstateをサポートしているかどうかを確認します。

マウントされた(){
 window.history と window.history.pushState の場合 {
 history.pushState(null, null, ドキュメント.URL);
 window.addEventListener('popstate', this.goBack, false);
 }
},

2. ページが破棄されたら監視を解除します。それ以外の場合は、他のvueルーティングページも監視されます。

破壊された()
 window.removeEventListener('popstate', this.goBack, false);
},

3. 監視操作をメソッドに記述します。監視を解除するremoveEventListenerの内容は、監視を開始する内容と一致している必要があるため、その機能はメソッドに記述されます。

方法:{
 戻る(){
 this.$router.replace({path: '/'});
 //replace は、無限ループに陥るのを避けるために元のルートを置き換えます}
}

P.S. popstate は何に使用されますか?

popstateの使い方は?

新しい HTML5 API は window.history を拡張して、履歴ポイントをよりオープンにします。現在の履歴ポイント pushState を保存し、現在の履歴ポイント replaceState を置き換え、履歴ポイント popstate をリッスンすることができます。

pushState と replaceState の使用方法は似ています。

方向:

history.pushState(データ、タイトル、URL);
// 最初のパラメータ data は state の値です。2 番目のパラメータ title はページのタイトルですが、現在のすべてのブラウザはこのパラメータを無視するため、空の文字列を渡します。3 番目のパラメータ url は、移動先のリンクです。

replaceState の使用方法も同様です。たとえば、 history.replaceState("首頁","",location.href+ "#news");

要約する

これで、vue ブラウザ リターン モニタリングに関するこの記事は終了です。vue ブラウザ リターン モニタリングに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue でリターンキーを聴く際の問題
  • Vueがポップアップしたら、携帯電話のリターンキーを押してポップアップ機能を閉じます(ページはジャンプしません)
  • Vueプロジェクトで携帯電話の物理的な戻りボタンを監視する実装
  • Vueはブラウザのネイティブリターンボタンをリッスンしてルートジャンプ操作を実行します。
  • Vueルーティングキャッシュルーティングネストルーティングガードは物理的な戻り操作をリッスンします

<<:  RedHat 6.5 に MySQL 5.7 をインストールするための詳細なチュートリアル

>>:  ディスクを破壊せずに Linux で dd コマンドを使用する方法

推薦する

Dockerで作成したコンテナを削除する方法

Dockerで作成したコンテナを削除する方法1. まず、docker -s -aコマンドを使用してす...

htm 初心者ノート(初心者は必ず読んでください)

1. HTMLとは何かHTML (ハイパーテキスト マークアップ言語): ハイパーテキスト マーク...

10 種類のモダンなレイアウトを実現するための CSS コード

序文日曜日に自宅で web.dev の 2020 3 日間ライブを視聴したところ、興味深い点がたくさ...

border-image を使用してテキストバブルの境界線を実装する方法のサンプルコード

開発中に、非常に単純なテキストバブル効果に遭遇しました。これは、おおよそ次のようになります。 うーん...

ウェブサイトでページコンテンツや情報を直接コピーできない問題を解決する方法

最近では、多くのウェブサイトでは、ページ上の特定のコンテンツや情報を直接コピーすることは許可されてお...

Vueフィルターとカスタム命令の使用

目次フィルター01.とは02. やり方(1)フィルターを定義する(2)使用方法(3)フィルタパラメー...

Docker ロード後にイメージ名が none になる問題の解決方法

最近、docker load -i コマンドを使用してイメージ パッケージを圧縮した後、イメージ名と...

Linux の vsftpd サービス構成の簡単な分析 (匿名、ユーザー、仮想ユーザー)

vsftpd の概要vsftpd は「very secure FTP daemon」の略称で、セキ...

MySQL count(1)、count(*)、count(field)の違い

目次1. COUNTの初見2. COUNT(フィールド)、COUNT(定数)、COUNT(*)の違い...

threejs でリアルタイムポリゴン屈折を実装する方法

目次序文ステップ1: セットアップと前方屈折ステップ2: 反射とフレネル方程式ステップ3: 多面屈折...

Spark と Scala を使用して Apache アクセス ログを分析する方法

インストールまず、Java と Scala をインストールし、次に Spark をダウンロードしてイ...

JavaScript を使用して動的に生成されるテーブルの詳細な説明

*ページを作成する: 2つの入力ボックスとボタン*コードと手順/* 1. 入力行と列の値を取得する2...

Vueはアンカー配置機能を実装します

この記事では、アンカー配置を実装するためのVueの具体的なコードを例として紹介します。具体的な内容は...

ウォーターフォールフローレイアウトを実装する3つの方法

序文今日、Xianyuを閲覧していたとき、各行の高さが同じではないことに気付きました。調べてみると、...

複数の値を返す MySQL ストアド プロシージャ メソッドの例

この記事では、例を使用して、MySQL ストアド プロシージャで複数の値を返す方法について説明します...