简体   繁体   English

如何在 Angular 时间选择器中设置默认值?

[英]How to set default values in the Angular Timepicker?

I am using the NgbTimepickerModule and this is my template:我正在使用NgbTimepickerModule ,这是我的模板:

<form [formGroup]="form">
  <div ngbDropdown>
  <input class="datepicker btn btn-link"  ngbDropdownToggle [value]="_value?(_value|date:'dd/MM/yy, HH:mm'):label">
      <div ngbDropdownMenu >
        <ngb-datepicker #dp [(ngModel)]="date" (dateSelect)="getDatetime()"[ngModelOptions]="{standalone:true}" ></ngb-datepicker>

        <ngb-timepicker [ngModel]="time" (ngModelChange)="time=$event;getDatetime()"[ngModelOptions]="{standalone:true}" [hourStep]="time?.hour" [minuteStep]="time?.minute"></ngb-timepicker>
      </div>
      </div>
  <button class="btn btn-primary">submit</button>
  </form>

I want time picker to have some default values in the HH and MM inputs and not be blank我希望时间选择器在 HH 和 MM 输入中有一些默认值而不是空白

时间选择器空白

Here is the link to my Stackblitz⚡这是我的 Stackblitz 的链接

Also is it possible to add "required validation" on my datetime picker?也可以在我的日期时间选择器上添加“必需的验证”吗?

I have forked your stackblitz example and tweaked your code to achieve your requirements.我已经分叉了您的 stackblitz 示例并调整了您的代码以满足您的要求。

here is the codebase I tweaked.这是我调整的代码库。

// initialized time object from time: any to
time: { hour: number, minute: number};

In your if time not set condition added default time在您的 if time not set 条件下添加默认时间

if (!this.time) {
    value =  new Date().getDate()+'/'+new Date().getMonth()+'/'+new Date().getFullYear()+' '+ new Date().getHours() +':'+ new Date().getMinutes();
  
  // note this part  
  this.time = {
      hour: new Date().getHours(),
      minute: new Date().getMinutes()
    };
  }

Checkout the working DEMO检查工作演示

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM