Angular 如何根据条件从当前日期开始添加1小时

Angular 如何根据条件从当前日期开始添加1小时,angular,typescript,Angular,Typescript,我想在当前时间的条件下添加1小时。如果小时等于“22”,则限制为22事件分钟 HTML <ion-list lines="none" class="ion-list-time"> <ion-radio-group mode="md" value="NOW"> <ion-item > <!-- <ion-c

我想在当前时间的条件下添加1小时。如果小时等于“22”,则限制为22事件分钟

HTML

<ion-list  lines="none" class="ion-list-time">
        <ion-radio-group mode="md"  value="NOW">
          <ion-item  >
            <!-- <ion-col class="d-flex"> -->
            <ion-label for="q1" class="as-center">Now</ion-label>
            <ion-radio  slot="start" (ionFocus)="radioFocus()" value="NOW" id="q1"></ion-radio>
          <!-- </ion-col> -->
          </ion-item>
          <ion-item>
            <!-- <ion-col class="d-flex"> -->
            <ion-label for="q2" class="as-center">Later</ion-label>
            <ion-radio slot="start" (ionFocus)="radioFocus()" value="LATER" id="q2"></ion-radio>
          <!-- </ion-col> -->
            <ion-col class="d-flex" *ngIf="isTimeShow">
            <ion-datetime displayFormat="hh:mm A" [(ngModel)]="TakeAwayTime" placeholder="time"></ion-datetime>
          </ion-col>
          </ion-item>
          <ion-item>
            <ion-label for="q3">Time</ion-label>
            <ion-datetime displayFormat="hh:mm A" [(ngModel)]="TakeAwayTime" id="q3"></ion-datetime>
          </ion-item>
        </ion-radio-group>
      </ion-list>
使用:

TakeAwayTime:moment.moment=moment();
无线电聚焦(){
const nowPlusOneHour=moment().add(1,'小时');
const todayEve=nowPlusOneHour.hours(22)、minutes(0)、seconds(0);
this.TakeAwayTime=nowPlusOneHour.isAfter(todayEve)?todayEve:nowPlusOneHour;
}
现在(){
this.TakeAwayTime=时刻();
}

如果这会更新UI,我强烈建议使用ngZone.run:

this.ngZone.run(()=>this.TakeAwayTime=moment());
请记住使用
构造函数(专用ngZone:ngZone)
将服务注入构造函数中,方法是:

TakeAwayTime:moment.moment=moment();
无线电聚焦(){
const nowPlusOneHour=moment().add(1,'小时');
const todayEve=nowPlusOneHour.hours(22)、minutes(0)、seconds(0);
this.TakeAwayTime=nowPlusOneHour.isAfter(todayEve)?todayEve:nowPlusOneHour;
}
现在(){
this.TakeAwayTime=时刻();
}

如果这会更新UI,我强烈建议使用ngZone.run:

this.ngZone.run(()=>this.TakeAwayTime=moment());

记住用
构造函数(私有ngZone:ngZone)将服务注入构造函数中

为什么不使用矩<代码>时刻()。添加(1,“小时”)
添加1小时工作罚款。。但我只想当加上1小时等于22时,它应该是22,不多了。你们为什么不使用矩呢<代码>时刻()。添加(1,“小时”)
添加1小时工作罚款。。但我只想当加1小时等于22时,它不应该是22。。
TakeAwayTime: String = new Date().toISOString();

  radioFocus() {
    var dt = new Date();
    console.log(dt)
    const newdate = dt.setMinutes( dt.getMinutes() + 60 );
    this.TakeAwayTime = new Date( newdate).toISOString();
  }
  now() {
    this.TakeAwayTime = new Date().toISOString();
  }