世論調査の理解実際、ポーリングの焦点はループ自体ではなく、実行間の間隔にあります。 Ajax は非同期リクエストであり、リクエストの開始から応答の受信までが完全なプロセスです。このプロセスに必要な時間は予測できません。極端な言い方をすると、リクエストに必要な時間がポーリング間隔を超えると、多くの問題が発生します。したがって、ポーリング間隔は、リクエスト プロセスが完了することを保証することを基準にする必要があります。これがより論理的です。 事業内容:
ビジネスロジックポイント分析:
実装のアイデア
// ポーリングメソッド polling (page) { this.getWorks(page).then(res => { this.pollingST = setTimeout(() => { タイムアウトをクリアします(this.pollingST) this.polling(ページ) }, 10000) }) } setIntervalを使わない理由 setInterval の機能は、ポーリングの概念に完全に一致しているようです。操作が同期コードである場合、setInterval を使用しても問題はありません。問題は、setInterval が十分に柔軟ではなく、最後のリクエストが完了したかどうかを知ることができないことです。したがって、setTimeout の方が適しています。 注意事項 ポーリングでは、pollingST 変数を使用してタイマーを記録しました。実行のたびに、前のタイマーをクリアする必要があります。再帰呼び出しはタイマー内にあるため、タイマーをクリアしてポーリングを終了するのは非常に便利です。 完全な疑似コード<スクリプト> エクスポートデフォルト{ データ () { 戻る { ポーリングST: null } }, メソッド: { // ページ変更イベント pageChange (params) { // 既存のタイマーをクリアします clearTimeout(this.pollingST) //ポーリングを呼び出す this.polling(params) }, // リクエストインターフェースメソッド getWorks() { 新しい Promise を返します(resolve => resolve({})) }, // ポーリングメソッド polling (params) { this.getWorks(params).then(res => { this.pollingST = setTimeout(() => { タイムアウトをクリアします(this.pollingST) this.polling(パラメータ) }, 10000) }) } }, 作成された(){ // ポーリングを呼び出す this.polling({ page: 1, pageSize: 5 }) }, 破壊された(){ タイムアウトをクリアします(this.pollingST) } } </スクリプト> 要約するこれで、vue ポーリング ソリューションに関するこの記事は終了です。より関連性の高い vue ポーリング ソリューションについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Alibaba Cloud Ubuntu 16.04 が IPSec サービスを構築
>>: Centos8 に nginx をインストールするための詳細なチュートリアル (画像とテキスト)
1. keepalived の紹介Keepalived は、もともと LVS クラスタ システム内の...
この記事では、アコーディオン効果を実現するためのjsの具体的なコードを参考までに共有します。具体的な...
この記事で説明する等高レイアウトでは、純粋な CSS を使用して、要素の高さを手動で設定することなく...
HTML で境界線を設定する 3 つの方法 境界線の幅: 1px 2px 2px; 境界線のスタイル...
Vim は Linux でよく使用されるテキスト エディターです。 Vim は、Sublime や ...
目次1. 監視ポート関係の説明操作する2. 監視サービス関係の説明操作する3. テンプレートのインポ...
この記事の内容: ページ中空マスクレイヤー、ページ中空マスクガイドレイヤー、画像中空マスク通常のマス...
平行ボックスの余白 (二重余白の重なり) に関する面接の質問: 1 つのボックスに上余白があり、もう...
高さ:100% が機能しないのはなぜですか?この知識は不人気ではありませんが、使用する際には混乱する...
Seurat は、単一細胞解析用の重量級の R パッケージです。使用したことがある人なら誰でも、その...
1. ホット デプロイメント: コンテナの実行中にプロジェクト全体を再デプロイすることを意味します。...
多くの人が Linux Homebrew を使用しています。これをより良く使用するための 3 つのヒ...
背景:サーバーがFlaskプロジェクトをデプロイし、python3をインストールしたため、再起動時に...
今日、牛南ニュースリリースシステムについて学んでいたとき、牛南先生はスクロールバーに関するいくつかの...
マイクロソフトIIS (Internet Information Server) は、Microso...