プロジェクトを実行すると、リアルタイム更新、広告アニメーションの連続表示などの要件に遭遇することは避けられません。最近では、ビジネスニーズに基づいて、通話時間を累積するためのタイマーを実装する必要があります。このとき、タイマーはコード段階に入る必要があります。実際、タイマーの場合、その原理はタイマーを通じて実現されます。そのため、ビジネス要件を書く前に、タイマーに関するいくつかの知識についてお話しします。 window オブジェクトには、タイマー効果を実装するための 2 つのメソッド、window.setTimeout() と window.setInterval が用意されています。 Javascript では、コードは通常同期的に実行されますが、タイマーは非同期的に実行されます。 window.setTimeout(callback,delay); //callback: コールバック関数 delay: 時間間隔 window.setInterval(callback,delay); タイマーは、インターバルタイマーsetIntervalと遅延タイマーsetTimeoutに分かれています。 では、この2つの違いは何でしょうか?
タイマーの基本的な知識を理解した後、機能を実装できます。 html <テンプレート> <div class="タイマー"> <div>{{現在時刻}}</div> </div> </テンプレート> ジャバスクリプト <スクリプト> エクスポートデフォルト{ 名前: 'タイマー'、 データ () { 戻る { タイマー: null、 現在時刻:"", 時間: 0, 分: 0, 秒: 0 } }, 作成された(){ this.timer = setInterval(this.startTimer, 1000); }, 破壊された(){ タイマー間隔をクリアします。 }, メソッド: { スタートタイマー() { // タイマーの蓄積によって発生する予期しないバグを回避するために、タイマーを開始する前にクリアすることをお勧めします。 if(this.timer) { タイマー間隔をクリアします。 } this.seconds += 1; if (this.seconds >= 60) { this.seconds = 0; this.minutes = this.minutes + 1; } (this.minutes>= 60)の場合{ this.分 = 0; this.hour = this.hour + 1; } this.nowTime = this.toZero(this.hour): this.toZero(this.minutes): this.toZero(this.seconds) }, toZero(時間番号) { timeNumber<10?"0"+timeNumber:timeNumber を返します }, } } </スクリプト> このように、シンプルなタイマーコンポーネントが実装されています。実は他にも実装のアイデアはあります。今後の開発で同様の要件に遭遇した場合は、参考にしてください。お役に立てれば幸いです。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Dockerはnextcloudを使用してプライベートBaiduクラウドディスクを構築します
>>: Windows 環境での MySQL 8.0 のインストール、設定、アンインストール
目次概要Big O 表記法とは何ですか?オー(1)の上) (n^2) O(logn) ですの上!)結...
HTML フォームは、さまざまな種類のユーザー入力を収集するために使用されます。次のコードは、HTM...
1. 問題下図のような表があり、結果値がreference_high値より大きいデータを見つける必要...
概要中小規模のプロジェクトでは、特にレポートを作成するときに、結合テーブル クエリが非常に一般的な操...
準備する: MySQL 8.0 Windows zip パッケージのダウンロード アドレス: htt...
docker コマンドを初めて使用する場合、権限の問題を確認するメッセージが表示されます。 unix...
TeamCenter12はアカウントのパスワードを入力し、ログインをクリックすると、404または50...
1. mysqldump の使用時にエラー (1064) が報告されます。これは、mysqldump...
この記事では、ミニプログラムで製品属性選択または仕様選択を実装するための具体的なコードを参考までに共...
1. テーブルを作成する<br /> まず、2 つのテーブル (users テーブルと...
両側に隙間なし、各列間に隙間あり 幅: 100%; 表示: グリッド; グリッドテンプレート列: r...
目次1.ダウンロード後、インストールしたいディレクトリに解凍します。 2. インストールディレクトリ...
この記事では、マウスでカード内外のコンテンツを切り替えるためのjsの具体的なコードを紹介します。具体...
1. 4つの起動方法: 1.mysqld MySQL サーバーを起動します: ./mysqld --...
MySQL バージョン 5.0 ではストアド プロシージャのサポートが開始されました。ストアド プロ...