プロジェクトのニーズ: インターネット上でも類似の記事をたくさん見つけましたが、それらを使用するにはいくつか問題があります。結局のところ、自分のニーズに合うようにする必要があります。ここでは vue3 を使用していますが、理論的には vue2 も使用できます。私が書いた方法は普遍的です。 これらのメソッドはすべて、 1. beforeunload イベント1.1、初心者向けチュートリアル: 1.2、MDN 2. アンロードイベント2.1、初心者向けチュートリアル 2.2、MDN
使用したソースコードは以下に掲載しています。 3. ソースコード3.1. 方法1: HTMLページに記述できる(直接使用) var _beforeUnload_time = 0、_gap_time = 0; window.onunload = 関数 (){ _gap_time = 新しい Date().getTime() - _beforeUnload_time; if(_gap_time <= 10){//ブラウザを閉じる window.mgr.signoutRedirect();//このmgrはwindowで公開したログアウトメソッドです}else{//ブラウザを更新 - chrome refresh console.log(document.domain); return confirm("このシステムを終了してもよろしいですか?"); } }; window.onbeforeunload = 関数 (){ _beforeUnload_time = 新しいDate().getTime(); }; 3.2. 方法2: データ() { 戻る { ギャップ時間: 0, アンロード前時間: 0, }; }, メソッド: { //ウィンドウを閉じる前に実行する beforeunloadHandler() { this.beforeUnload_time = 新しい Date().getTime(); }, アンロードハンドラ() { this.gap_time = 新しい Date().getTime() - this.beforeUnload_time; //ウィンドウが閉じられたか更新されたかをミリ秒単位で判断します。オンラインの読み取りのほとんどは5です。 (this.gap_time <= 10)の場合{ mgr.signoutRedirect(); // ログアウトインターフェースは個人用ログアウトメソッドに置き換える必要があります} else { console.log(ドキュメント.ドメイン); return confirm("このシステムを終了してもよろしいですか?"); } }, }, unmounted(){//vue は destroyed() ライフサイクルに置き換えることができますが、これも使用できます // リスナーを削除します window.removeEventListener("beforeunload", () => this.beforeunloadHandler()); window.removeEventListener("unload", () => this.unloadHandler()); }, マウント() { // ブラウザの終了をリッスンします。window.addEventListener("beforeunload", () => this.beforeunloadHandler()); window.addEventListener("unload", () => this.unloadHandler()); }, 参考記事: これで、vue でのブラウザの終了とログアウトの実装に関するこの記事は終了です。より関連性の高い vue のブラウザの終了とログアウトのコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: CSS スタイルにおける中国語フォントのフォントファミリーに対応する英語名の詳細な説明
>>: MySQLデータベースのマスタースレーブレプリケーションの原理と機能の分析
目次例示する1. ブロブオブジェクト2. フロントエンド3. バックエンド要約する例示する最近、ファ...
目次1. ノードをインストールする2. Commander.jsをインストールする3. JavaSc...
参考までに、Vue シングル サインオンのデモをご紹介します。詳細を知りたい方のお役に立てれば幸いで...
目次バックグラウンドで10,000個のデータが失われた再帰法非再帰的方法要約するバックグラウンドで1...
WeChatコンポーネントの形式で提供されます。コンポーネント内部ではasync/awaitが使用さ...
01. コンパイルオプションとカーネルコンパイルLinux カーネル (英語: linux kern...
Springboot プロジェクトを開始するには、次の 3 つの方法があります。 1. メインメソッ...
Cerebro は、Elasticsearch バージョン 5.x より前の Elasticsear...
それは何ですか? Spring Boot は、Spring オープンソース組織のサブプロジェクトであ...
1. 理由新しいシステムに MySQL を再インストールする必要があったので、将来詳細を忘れた場合...
<input> タグ<input> タグはユーザー情報を収集するために使用さ...
この記事では、参考までにMySQL 8.0.15のインストールと設定のグラフィックチュートリアルを紹...
1. instanceofの使用法instanceof演算子は、コンストラクター関数のprototy...
最近、複数のdivにあるテーブルのTDを同じ幅に調整しても、揃えることができず、幅にパターンがないこ...
具体的な方法:まずコマンドプロンプトを開きます。次に、[ mysql -u root -p ] コマ...