我将Angular与PrimeNg库一起使用,我具有以下组件:
<td *ngFor="let item of items">
<p-calendar
showTime="true"
[(ngModel)]="item.testDate">
</p-calendar>
</td>
我从数据库中以字符串形式获取值item.testDate
。但是,我需要它的日期类型。
有没有办法我可以用类似角度表达式的方法做到这一点。类似于:[(ngModel)]="new Date(item.testDate)"
还是禁止我如何将该字符串转换为日期?
答案 0 :(得分:2)
我建议您需要在服务中将其转换为Date(在获取数据时,将其转换),控制器或过滤器,而不是视图。保持视图简单。
答案 1 :(得分:0)
Angular具有内置的日期管道,可以根据区域设置规则将1.日期对象2.数字或3. ISO字符串转换为日期值。我想这是您打算做的,因为您尚未在问题中解决此问题。
它可以用作
{{ value_expression | date [ : format [ : timezone [ : locale ] ] ] }}
有关更多参考,Angular Data Pipe
答案 2 :(得分:0)
我认为您必须使用带角度的日期管道。 但是您不能直接在ngModel中使用它。
Ex;
<td *ngFor="let item of items">
<p-calendar showTime="true" [(ngModel)]="(item.testDate | date:'fullDate')"
(ngModelChange)="item.testDate = $event">
</p-calendar>
</td>
请通过以下链接查询日期类型: https://angular.io/api/common/DatePipe