Vueはシンプルなタイマーコンポーネントを実装します

Vueはシンプルなタイマーコンポーネントを実装します

プロジェクトを実行すると、リアルタイム更新、広告アニメーションの連続表示などの要件に遭遇することは避けられません。最近では、ビジネスニーズに基づいて、通話時間を累積するためのタイマーを実装する必要があります。このとき、タイマーはコード段階に入る必要があります。実際、タイマーの場合、その原理はタイマーを通じて実現されます。そのため、ビジネス要件を書く前に、タイマーに関するいくつかの知識についてお話しします。

window オブジェクトには、タイマー効果を実装するための 2 つのメソッド、window.setTimeout() と window.setInterval が用意されています。

Javascript では、コードは通常同期的に実行されますが、タイマーは非同期的に実行されます。

window.setTimeout(callback,delay); //callback: コールバック関数 delay: 時間間隔 window.setInterval(callback,delay);

タイマーは、インターバルタイマーsetIntervalと遅延タイマーsetTimeoutに分かれています。

では、この2つの違いは何でしょうか?

  • setInterval は、指定された期間のサイクルで実行されます。通常、フォームを更新し、複雑なアニメーションをサイクルで実行するために使用されます。また、指定された時間に一部のフォームをリアルタイムで更新および同期するためにも使用されます。
  • setTimeout は、指定された時間後に 1 回だけ実行されます。たとえば、一部の Web サイトでは、初めてアクセスしたときにポップアップ広告が表示されます。通常は、setTimeout が使用されます。

タイマーの基本的な知識を理解した後、機能を実装できます。

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 を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vueメソッドに基づくシンプルなタイマーの実装
  • Vue-cliフレームワークはタイマーアプリケーションを実装します
  • Vueを使用してタイマー機能を実装する
  • Vue.jsはシンプルなタイマー機能を実装します
  • Vueタイマーの実装方法
  • Vueタイマーの詳細な使い方
  • Vueコンポーネントが破棄された後もタイマーが実行し続ける問題を解決する
  • タイマーを使用してマーキー効果を実現する Vue サンプルコード
  • vueタイマーコンポーネントの実装コード
  • Vue3 でタイマーコンポーネントをカプセル化する方法

<<:  Dockerはnextcloudを使用してプライベートBaiduクラウドディスクを構築します

>>:  Windows 環境での MySQL 8.0 のインストール、設定、アンインストール

推薦する

JavaScript でアルゴリズムの複雑さを学ぶ方法

目次概要Big O 表記法とは何ですか?オー(1)の上) (n^2) O(logn) ですの上!)結...

HTML フォーム コンポーネントのサンプル コード

HTML フォームは、さまざまな種類のユーザー入力を収集するために使用されます。次のコードは、HTM...

mysql データ型変換の実装

1. 問題下図のような表があり、結果値がreference_high値より大きいデータを見つける必要...

MySQL 結合テーブルクエリの基本操作 左結合のよくある落とし穴

概要中小規模のプロジェクトでは、特にレポートを作成するときに、結合テーブル クエリが非常に一般的な操...

Windows 10 + mysql 8.0.11 zipインストールチュートリアルの詳細

準備する: MySQL 8.0 Windows zip パッケージのダウンロード アドレス: htt...

ルート権限なしでログインするためのDockerソリューション

docker コマンドを初めて使用する場合、権限の問題を確認するメッセージが表示されます。 unix...

TeamCenter12 にログインする際の 404/503 問題の解決方法

TeamCenter12はアカウントのパスワードを入力し、ログインをクリックすると、404または50...

mysqldumpデータエクスポートの問題に関する詳細な議論

1. mysqldump の使用時にエラー (1064) が報告されます。これは、mysqldump...

ミニプログラムにより、製品属性の選択や仕様の選択が可能

この記事では、ミニプログラムで製品属性選択または仕様選択を実装するための具体的なコードを参考までに共...

Navicat でストアド プロシージャ、トリガーを作成し、カーソルを使用する簡単な例 (画像とテキスト)

1. テーブルを作成する<br /> まず、2 つのテーブル (users テーブルと...

グリッド共通レイアウトの実装

両側に隙間なし、各列間に隙間あり 幅: 100%; 表示: グリッド; グリッドテンプレート列: r...

Windows 10 に MySQL 8.0.19 を zip 形式でインストールする詳細なチュートリアル

目次1.ダウンロード後、インストールしたいディレクトリに解凍します。 2. インストールディレクトリ...

js はマウスインとマウスアウトによるカード切り替えコンテンツを実装します

この記事では、マウスでカード内外のコンテンツを切り替えるためのjsの具体的なコードを紹介します。具体...

mysql の認証、起動、およびサービスの起動のための一般的なコマンド

1. 4つの起動方法: 1.mysqld MySQL サーバーを起動します: ./mysqld --...

MySQL ストアドプロシージャの長所と短所の分析

MySQL バージョン 5.0 ではストアド プロシージャのサポートが開始されました。ストアド プロ...