我想使用Angular2以编程方式为我的控件设置一个特定的Date,但无论我如何尝试,输入始终显示" yyyy。毫米。 DD&#34。在我的浏览器中。
这是我的代码: HTML:
<input class="form-control" type="date" [(ngModel)]="dateFrom" name="dateFrom" min="2016-10-01" [value]="2016-10-01" />
打字稿
public dateFrom: Date;
constructor() {
}
ngOnInit() {
this.dateFrom = new Date(Date.parse("2016-10-01"));
}
请注意,min =&#34; date&#34;和[值] =&#34;日期&#34;也没有在纯HTML代码中工作。是否有我想要的东西,或者从代码中设置输入值是一个非常糟糕的主意?
答案 0 :(得分:1)
如果需要从Angular2变量初始化值,则输入必须是Angular2表单组件的一部分,模型驱动表单或模板驱动表单。并且日期输入期望日期的字符串表示,而不是javascript日期对象
value = date# 表示日期的字符串。
将代码更改为使用如下字符串:
TypeScript组件
public dateFrom: string = "2016-10-01";
Html组件
<form #form="ngForm">
<input type="date" [(ngModel)]="dateFrom" name="dateFrom"/>
</form>
答案 1 :(得分:0)
这将有效,请在此处查看plunker
使用[ngModel]
管道, <input class="form-control" type="date" [ngModel] ="dateFrom | date:'yyyy-MM-dd'" (ngModelChange)="$event = dateFrom" name="dateFrom" min="2016-10-01" [value]="2016-10-01" />
和List.class
:
java.lang.reflect.Type