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

推薦する

MySQLがbinlogファイルを手動で登録し、マスタースレーブ異常を引き起こす理由

1. 問題の原因友人の @水米田 から、POSITION に基づくマスタースレーブについて質問があり...

Dockerコンテナ内のホストのホスト名が取得できない問題の解決方法

Node.js環境でテストが通っています。他の言語でも同様です。環境変数を取得する方法を使うだけです...

Nginx で WordPress 擬似静的を設定する方法の例

Baidu の擬似静的の説明を引用します。擬似静的は、実際の静的に相対的です。通常、検索エンジンの使...

jsはポップアップウィンドウをクリックすることでポップアップログインボックスを実装します

この記事では、ポップアップウィンドウをクリックしたときにポップアップログインボックスを実現するための...

WeChatアプレットはふるいを振る効果を実現

この記事では、WeChatアプレットの具体的なコードを参考までに共有します。具体的な内容は次のとおり...

mysql8.0 パスワードを忘れた場合の修正とネットコマンドのサービス名が無効になる問題

cmdにnet start mysqlと入力すると、プロンプトが表示されます: サービス名が無効です...

VMware Workstation のインストール (Linux カーネル) Kylin グラフィック チュートリアル

この記事では、VMware WorkstationにKylinをインストールする方法を参考までに紹介...

Linux でソースインストールされたパッケージを簡単に削除する方法

ステップ1: Stowをインストールするこの例では CentOS を使用しているため、拡張 EPEL...

単一のMySQLテーブルを復元する手順

休憩中に、眠気を完全に吹き飛ばす電話がかかってきました。「開発者が更新 SQL を書くときに whe...

dubbo での Zookeeper リクエストのタイムアウト問題: mysql8.0.15 に接続する mybatis+spring の構成

ここ2日間Javaを復習するつもりなので、練習にdubboを使ってショッピングモールプロジェクトを書...

Linux のソフトリンクとハードリンクの詳細な説明

目次1. ファイルとディレクトリの基本的な保存2. Inコマンドの紹介(1)lnコマンドの基本情報を...

Vue での mixin の応用について議論する

Mixin は、再利用可能な機能を Vue コンポーネント間で分散する非常に柔軟な方法を提供します。...

MySQLデータベースホスト127.0.0.1とlocalhostの違い

私の友人の多くは、127.0.0.1 と localhost の違いがわからず、問題に遭遇するかもし...

Ubuntu 16.04にJenkinsをインストールするための詳細な手順

1. 前提条件JDKがインストールされましたecho $PATHソフトリンクを作成し、JDKのインス...

JSで実現したページサイドバーの効果に関する研究

目次発見: ディスプレイアニメーションの応用実装:記事の1行目を表示する効果を実現する方法実際、その...