比较html type =" date"使用typescript new Date()对象

时间:2017-12-06 16:00:22

标签: html angular typescript

我有一个HTML代码

<div class="form-group row">
          <label class="col-sm-2 col-form-label">Due date: </label>
          <div class="col-sm-10">
            <input type="date" class="form-control" #due_date>
          </div>
</div>

我的typscript代码是这样的,但它永远不会进入条件,所以我该怎么办?

if(element.due_date <= new Date()){
    //if(element.due_time <= new Date().toLocaleTimeString())
    console.log(element);
    element.notify = true;
  } 

2 个答案:

答案 0 :(得分:1)

可以使用moment.js轻松完成。 我会将输入模型保持为ISO字符串,并在比较日期时进行解析:

moment(dateInISO).isAfter(anotherDateInISO); // true

或者让moment.js处理你自己的不同日期类型:)

答案 1 :(得分:0)

根据模板,您的组件代码应该是

export class SomeComponent {
  @ViewChild('due_date') due_date: ElementRef;

  someMethod() {
    const inputDate = new Date(this.due_date.nativeElement.value);
    if (inputDate <= new Date()) {
      //if(element.due_time <= new Date().toLocaleTimeString())
      console.log(this.due_date.nativeElement.value);
      // element.notify = true;
    } 
  }
}