今日は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 をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: テーブルレイアウトの長所と短所、そして推奨されない理由
これまでの記事で、フロントエンド開発者にとって必須のツール、スクリプト、リソースのコレクションを紹介...
CSSの背景プロパティの値背景色背景画像背景繰り返し背景位置背景添付複合プロパティ: 背景: ba...
解決策:クリック イベントをオーディオ コンポーネントにバインドし、再生メソッドと一時停止メソッドを...
私のプロジェクトの特定の機能ではサーバーが rabbitmq にメッセージを送信する必要があるため、...
勉強や仕事で FTP サーバーを頻繁に使用する場合は、起動時に自動的に起動するように設定できます。設...
MySQLのダウンロードとインストール(バージョン8.0.20)のチュートリアルは参考までに、具体的...
目次1. 関数シグネチャ2. 関数のオーバーロード2.1 オーバーロードされたシグネチャは呼び出し可...
背景モバイル デバイスでは、ページ ジャンプ間のキャッシュが必須要件です。例: ホームページ =&g...
1. まず、次のパスに従って対応するフォルダを作成します。 ローカルのdockerでmysqlを実行...
目次1. ツールの紹介2. ワークフロー3. 操作インターフェースとパラメータ設定(1)監視と再起動...
この記事では、jQueryカルーセル機能の実装コードを参考までに共有します。具体的な内容は次のとおり...
js 実行字句解析フェーズ: 形式パラメータ解析、変数宣言解析、関数宣言解析の 3 つの部分が含まれ...
<br />1998年に最初の個人ページが誕生してから2008年の今日まで、デザイン業界...
binlog は、すべての mysql dml 操作を記録するバイナリ ログ ファイルです。 bin...
Mavenパッケージを解凍する tar xf apache-maven-3.5.4-bin.tar....