我在使用PrimeNG时遇到问题,我有多个用户使用不同时区的表单;但是,我希望for的所有用户在EST中提交他们的表单日历。似乎无论何时提交表单,无论他们选择什么日期/时间,它都会转换为浏览器/用户时区。这是如何禁用或实施的?这样当通过JSON对象提交表单时,它只保留一个静态时区(GMT)
现行守则
表单HTML
<p-calendar required [(ngModel)]="entry.reportedDate" name="reportedDate" #reportedDate="ngModel" [showIcon]="true" [showTime]="true" dateFormat="mm/dd/y 'EST'" hourFormat="24"></p-calendar>
json对象
{"reportedDate": "2019-02-13T15:00:16.000Z"}
FrontEnd HTML
<td style="border-right:3px solid #a5d891;">{{ m.reportedDate | date: 'EEEE, MMMM d, y, HH:mm'}} EST</td>
因此,当我的其他时区用户使用此表单时,reportedDate将调整为他们的时区,我不希望这种情况发生。
我只有一个标准的时区日期,从json对象传递到我的后端,然后在没有操作的情况下渲染到前端
希望这是有道理的,谢谢你的帮助!
PrimeNG没有让您指定时区。但是,您可以自己计算以获得所需的时区,并提交该值。
例如,您可以使用new Date().getTimezoneOffset()
获取使用的时区偏移量,并将EST时间的差值添加到日期值。
此外,您应该使用<td> {{ m.reportedDate | date: 'EEEE, MMMM d, y, HH:mm':'-500' }} EST </td>
以EST时间显示时间。