Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 以角度填充本地输入日期时间_Javascript_Angular_Typescript - Fatal编程技术网

Javascript 以角度填充本地输入日期时间

Javascript 以角度填充本地输入日期时间,javascript,angular,typescript,Javascript,Angular,Typescript,我需要在我的输入datetime local中输入一个默认值,但由于某些原因,它没有在angular中填充。请告诉我我需要做些什么来纠正这个错误。我的代码在下面 <!--Completion Date--> <div class="form-group"> <input formControlName="completionDate" type="datetime-local" id="completionDate"

我需要在我的输入datetime local中输入一个默认值,但由于某些原因,它没有在angular中填充。请告诉我我需要做些什么来纠正这个错误。我的代码在下面

<!--Completion Date-->
<div class="form-group">
    <input
      formControlName="completionDate"
      type="datetime-local"
      id="completionDate"
      placeholder="yyyy-MM-ddTHH:mm:ss"
      [min]="date"
      class="form-control"
      required
    />
</div>

populateDate(): string {
    this.dateObj = new Date();
    this.month = this.dateObj.getUTCMonth() + 1;
    this.day = this.dateObj.getUTCDate();
    this.year = this.dateObj.getUTCFullYear();

    return `${this.year}-${this.month}-${this.day}`;
}

createTroubleTicketForm() {
    this.troublTicketForm = this.fb.group({
      ttNum: [null, Validators.required],
      status: [null, Validators.required],
      completionDate: [null],
      incident: [null, Validators.required],
      rootCause: [null, Validators.required],
      resolution: [null],
      category: [null, Validators.required],
      plazaCode: [null, Validators.required],
      laneNum: [null, Validators.required],
      reportedBy: [null],
      helpDeskAgent: [null, Validators.required],
      assignedToTier: [null],
      ticketCreated: [this.populateDate(), Validators.required],
      remarks: [null]
    });
}

populateDate():字符串{
this.dateObj=新日期();
this.month=this.dateObj.getUTCMonth()+1;
this.day=this.dateObj.getUTCDate();
this.year=this.dateObj.getUTCFullYear();
返回`${this.year}-${this.month}-${this.day}`;
}
createTroubleTicketForm(){
this.troublTicketForm=this.fb.group({
ttNum:[空,验证程序。必需],
状态:[空,验证程序。必需],
完成日期:[null],
事件:[null,验证器。必需],
根本原因:[null,验证程序。必需],
决议:[null],
类别:[空,验证程序。必需],
广场代码:[空,验证器。必填],
laneNum:[空,验证程序。必需],
报告人:[null],
helpDeskAgent:[空,验证器。必需],
已分配收件人:[null],
ticketCreated:[this.populateDate(),Validators.required],
备注:[无]
});
}

在通过
[ngModel]
分配日期之前,您需要将日期转换为ISO格式

相关TS

  completeDate: Date;
  localCompleteDate: string;
  constructor() {
    this.completeDate = new Date();
    this.localCompleteDate = this.completeDate.toISOString();
    this.localCompleteDate = this.localCompleteDate.substring(0, this.localCompleteDate.length - 1);
  }
<input
  type="datetime-local"
  id="completionDate"
  [ngModel] = "localCompleteDate"
  placeholder="yyyy-MM-ddTHH:mm:ss"
  [min]="date"
  class="form-control"
  required
/>
<br/>
Date: {{completeDate | date:'short'}}
<br/>
ISO Date: {{ localCompleteDate }}
相关的HTML

  completeDate: Date;
  localCompleteDate: string;
  constructor() {
    this.completeDate = new Date();
    this.localCompleteDate = this.completeDate.toISOString();
    this.localCompleteDate = this.localCompleteDate.substring(0, this.localCompleteDate.length - 1);
  }
<input
  type="datetime-local"
  id="completionDate"
  [ngModel] = "localCompleteDate"
  placeholder="yyyy-MM-ddTHH:mm:ss"
  [min]="date"
  class="form-control"
  required
/>
<br/>
Date: {{completeDate | date:'short'}}
<br/>
ISO Date: {{ localCompleteDate }}


日期:{{completeDate}日期:'short'}
ISO日期:{localCompleteDate}

选中

您需要将日期转换为ISO格式,然后才能通过
[ngModel]
分配日期

相关TS

  completeDate: Date;
  localCompleteDate: string;
  constructor() {
    this.completeDate = new Date();
    this.localCompleteDate = this.completeDate.toISOString();
    this.localCompleteDate = this.localCompleteDate.substring(0, this.localCompleteDate.length - 1);
  }
<input
  type="datetime-local"
  id="completionDate"
  [ngModel] = "localCompleteDate"
  placeholder="yyyy-MM-ddTHH:mm:ss"
  [min]="date"
  class="form-control"
  required
/>
<br/>
Date: {{completeDate | date:'short'}}
<br/>
ISO Date: {{ localCompleteDate }}
相关的HTML

  completeDate: Date;
  localCompleteDate: string;
  constructor() {
    this.completeDate = new Date();
    this.localCompleteDate = this.completeDate.toISOString();
    this.localCompleteDate = this.localCompleteDate.substring(0, this.localCompleteDate.length - 1);
  }
<input
  type="datetime-local"
  id="completionDate"
  [ngModel] = "localCompleteDate"
  placeholder="yyyy-MM-ddTHH:mm:ss"
  [min]="date"
  class="form-control"
  required
/>
<br/>
Date: {{completeDate | date:'short'}}
<br/>
ISO Date: {{ localCompleteDate }}


日期:{{completeDate}日期:'short'}
ISO日期:{localCompleteDate}

选中

您可以共享角度版本吗?您是否从转换的ISO日期中删除了最后一个“Z”字符?我使用的是angular 8。我复制粘贴了你的代码。最后一个“Z”字符在哪里?
this.localCompleteDate=this.localCompleteDate.substring(0,this.localCompleteDate.length-1)有一个子字符串函数,我在其中删除最后一个字符。。。如果删除此行,您将看到ISO格式的日期,其中字符Z是ISO格式中该日期的最后一个字符。。我真的不明白为什么它可以在你的代码上工作而不是在我的代码上…在HTML输出上。。。你看到我的SB和你的程序有什么不同吗?你能分享一下角度版本吗?您是否从转换的ISO日期中删除了最后一个“Z”字符?我使用的是angular 8。我复制粘贴了你的代码。最后一个“Z”字符在哪里?
this.localCompleteDate=this.localCompleteDate.substring(0,this.localCompleteDate.length-1)有一个子字符串函数,我在其中删除最后一个字符。。。如果删除此行,您将看到ISO格式的日期,其中字符Z是ISO格式中该日期的最后一个字符。。我真的不明白为什么它可以在你的代码上工作而不是在我的代码上…在HTML输出上。。。你觉得我的SB和你的计划有什么不同吗?