Angularで1秒ごとに日付と時刻を更新する方法


  1. Dateオブジェクトを使用する方法: Angularコンポーネントのロジックで、Dateオブジェクトを定義し、1秒ごとに更新します。以下は、コード例です。

    import { Component, OnInit } from '@angular/core';
    @Component({
     selector: 'app-date-time',
     template: `
       <h1>{{ currentDateTime }}</h1>
     `,
    })
    export class DateTimeComponent implements OnInit {
     currentDateTime: string;
     ngOnInit() {
       setInterval(() => {
         const date = new Date();
         this.currentDateTime = date.toLocaleString(); // 必要に応じてフォーマットを調整できます
       }, 1000);
     }
    }

    上記のコードでは、currentDateTime変数をテンプレートにバインドして表示しています。setInterval関数を使用して、1秒ごとにcurrentDateTimeを更新しています。

  2. RxJSを使用する方法: RxJSは、Angularで非同期プログラミングを行うための強力なツールです。以下は、RxJSを使用して1秒ごとに日付と時刻を更新するコード例です。

    import { Component, OnInit } from '@angular/core';
    import { interval } from 'rxjs';
    @Component({
     selector: 'app-date-time',
     template: `
       <h1>{{ currentDateTime }}</h1>
     `,
    })
    export class DateTimeComponent implements OnInit {
     currentDateTime: string;
     ngOnInit() {
       interval(1000).subscribe(() => {
         const date = new Date();
         this.currentDateTime = date.toLocaleString(); // 必要に応じてフォーマットを調整できます
       });
     }
    }

    上記のコードでは、interval関数を使用して1秒ごとにイベントを生成し、それに応じて日付と時刻を更新しています。