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 のインストール、設定、アンインストール

推薦する

ウェブサイト開発におけるフロントエンド開発者とアーティストの知識の違い

概要: 多くの企業、特にインターネット Web サイトを主な事業とする企業のほとんどが、「アーティス...

Linux のような環境で jdk1.8 をインストールし、環境変数を設定する方法の詳細な説明

設定は非常にシンプルですが、毎回確認しないといけないので、記録だけ残しておきます。 1. インストー...

「MySQL サービスを開始できません エラー 1069」を解決する方法

今日、外出中に同僚から、ウェブサイトのバックエンドにアクセスできないというメッセージが届きました。と...

読み込み進捗バーのネイティブ JS 実装

この記事では、ネイティブ JS によって実装された動的読み込みプログレス バーの特殊効果を紹介します...

MySQL インデックス失敗の原理

目次1. インデックス失敗の理由2. インデックスの秩序が崩れる状況を見てみましょう。 - インデッ...

Nginx に React プロジェクトをデプロイする方法の例

テストプロジェクト: react-demo react-demo プロジェクトをサーバーにクローンし...

Vueカスタム命令の詳細な説明

目次Vueカスタムディレクティブカスタムディレクティブフック機能出力関連属性アプリケーション例要約す...

Linux (Ubuntu) での MySQL 5.6.28 のインストールと設定のチュートリアル

mysql5.6.28のインストールと設定方法1. 基本的なシステム情報を確認し、yumでインストー...

axios リクエストのカプセル化に基づく Vue アプリケーションのサンプルコード

目次axiosとは何ですか? Axios リクエストタイプ? Axiosはデフォルトのカスタム構成を...

MySQL 文字列インデックスのより合理的な作成ルールに関する議論

序文MySQL インデックスの使用に関しては、これまでインデックスの最左接頭辞ルール、インデックス ...

HTML の一般的でないタグ optgroup、sub、sup、bdo のサンプルコード

Optgroup は、ドロップダウン リストのコンテンツをより整理するために、select タグで使...

Vue の element-ui コンポーネントのデフォルトの CSS スタイルを変更する 4 つの方法

目次序文1. グローバル統合オーバーライドを使用する2. .vueファイルを変更する3. コンポーネ...

Vue の this.$store.state.xx.xx に関する簡単な説明

目次これを Vue.$store.state.xx.xxストアからデータを取得する私のプロジェクトフ...

Tencent Cloud Serverの構築方法を説明します(グラフィックチュートリアル)

この記事は元々ブロガーのWeiwei Miaoによって書かれたものです。ブログホームページ: htt...

SQL IDENTITY_INSERT ケーススタディ

一般的に、データ テーブル内の列を ID 列として設定すると、ID 列の表示値を手動で ID 列に挿...