momentJs を使用してカウントダウン コンポーネントを作成する (サンプル コード)

momentJs を使用してカウントダウン コンポーネントを作成する (サンプル コード)

今日はvueとmomentで作ったカウントダウンを紹介したいと思います。具体的な内容は以下のとおりです。

表示スタイル:

<テンプレート>
    <div class="table-right flex-a-center">
        <div class="time-text">
            <span class="timeTextSpan" v-for="item,h のインデックス" >{{item}}</span>
            <span class="timeTextSpan1">: </span>
            <span class="timeTextSpan" v-for="item,m のインデックス" >{{item}}</span>
            <span class="timeTextSpan1">: </span>
            <span class="timeTextSpan" v-for="item,s のインデックス" >{{item}}</span>
        </div>
    </div>
</テンプレート>
<スクリプト>
'moment' から moment をインポートする
エクスポートデフォルト{
  小道具: {
    endTime: { }, //最終受信時刻 2021-12-17 16:29:20
  },
  データ() {
    //ここにデータを保存します return {
      h:'00',
      m:'00',
      s:'00',
      タイマー:null
    };
  },
  時計:
    終了時間: {
      ハンドラ(e) {
        もし(e){
          自分 = これ
          クリア間隔(this.timer)
          this.timer = setInterval(function(){self.init()},1000)
        }
      },
      深い:本当、
      即時: 真
    }
  },
  マウント() {
    自分 = これ
    自己初期化()
    クリア間隔(this.timer)
    this.timer = setInterval(function(){self.init()},1000)
  },
  //メソッドコレクションメソッド: {
    初期化(){
        time = moment(this.endTime).diff(moment()) とします。
        時間 <= 0 の場合
          クリア間隔(this.timer)
          this.onOver()
          戻る
        }
        t = 時間 / 1000 とします。
        let d = Math.floor(t / (24 * 3600)); // 残りの日数。必要に応じて補うことができます。let h = Math.floor((t - 24 * 3600 * d) / 3600) + d*24; // 日数は必要ありません。日数を時間に変換します。let _h = Math.floor((t - 24 * 3600 * d) / 3600) // 日数はそのままにして、時間数を取得します。let m = Math.floor((t - 24 * 3600 * d - _h * 3600) / 60);
        s = Math.floor((t - 24 * 3600 * d - _h * 3600 - m * 60));とします。
       
        this.h = 文字列(h).長さ == 1? '0'+文字列(h):文字列(h)
        this.m = 文字列(m).長さ == 1? '0'+文字列(m):文字列(m)
        this.s = 文字列.length == 1? '0'+文字列:文字列
    },
    onOver() {
      this.$emit('over') //カウントダウン終了時のコールバック}
 
  },
  beforeDestroy(){
    this.timer = null
    クリア間隔(this.timer)
  }
}
</スクリプト>
<style lang='less' スコープ>
@import url("@/assets/css/supplier.less");
 

  .table-right {
    フォントサイズ: 12px;
    色: #757e8a;
    .timeTextSpan{
      表示: インラインブロック;
      幅: 14px;
      高さ: 22px;
      テキスト配置: 中央;
      背景: #F1F0F0;
      境界線の半径: 2px;
      右マージン: 2px;
      フォントサイズ: 16px;
      色: #ff8a2b;
      フォントの太さ: 太字;
    }
    .timeTextSpan1{
      表示: インラインブロック;
      幅: 14px;
      テキスト配置: 中央;
      垂直方向の位置合わせ: 下;
      色:#202D40;
      フォントサイズ: 16px;
      フォントの太さ: 太字;
    }
   
    .time-text {
      左マージン: 10px;
    }
  }
</スタイル>

momentJs を使用してカウントダウン コンポーネントを作成する方法については、これで終わりです。momentJs カウントダウン コンポーネントの関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue は CLI 3.0 + momentjs + lodash パッケージ最適化を実装します

<<:  HTML の表のフレームとルール属性の詳細な説明

>>:  テーブルレイアウトの長所と短所、そして推奨されない理由

推薦する

Linux の cut コマンドの説明

Linux や Unix の cut コマンドは、ファイルの各行から一部を切り取って標準出力に出力す...

HTMLエンコードによる文字化け問題について

今日、3年生から質問がありました。彼が書いた HTML コードを開くと、文字化けした文字が表示されま...

Win10 の Linux サブシステムを有効にする方法を説明します (詳細な画像とテキスト付き)

今日は、Windows 10 で Linux サブシステムを有効にする方法を紹介します。早速、手順を...

JS ループで async と await を正しく使用する方法

目次概要(ループモード - 共通)配列と非同期メソッドを宣言して反復するforループで使用するマップ...

DockerにElasticsearch7.6クラスタをインストールしてパスワードを設定する方法

目次基本的な設定バージョンとDockerイメージについて始めるelasticsearch.ymlにつ...

一般的な HTTP ステータス コード 10 個の詳細な説明

HTTP ステータス コードは、Web サーバーの HTTP 応答ステータスを示すために使用される ...

Docker を使用してコンテナ内のルート パスワードを変更する方法

1. dockerfileを作成するときにsshパスワードを設定するには、次のコマンドを使用します。...

一目でわかる$nextTickの説明

目次1. 機能説明2. 親コンポーネント3. サブコンポーネント NextTick.vue 4なぜ未...

Vue.js フロントエンド Web ページ ポップアップ非同期動作例の分析

目次1. 序文2. ポップアップコンポーネントを2つ見つける3. 自分で作る3.1. Promise...

Xmeter APIインターフェーステストツールの使用状況の分析

XMeter API は、以下のサービスを含む、JMeter に基づくワンストップのオンライン イン...

高速レイアウトのための CSS ビューポート単位

CSS ビューポート ユニットはここ数年登場しており、時が経つにつれて、ますます多くの開発者が使用し...

innerHTML アプリケーション

ブランクのブログ: http://www.planabc.net/ innerHTML プロパティは...

ライフゲームの JavaScript 実装

目次コンセプト紹介論理的ルール完全なコード主な実装コンセプト紹介セルオートマトンとは、コンピュータの...

Tomcat でサーブレット URL パターンを構成する際の問題の詳細な説明

tomcat の web.xml を構成する場合、サーブレットは比較的重要な問題です。ここでは、サー...

jQueryは時間セレクタを実装する

この記事の例では、参考までに時間セレクターを実装するためのjQueryの具体的なコードを共有していま...