zl程序教程

您现在的位置是:首页 >  其他

当前栏目

SAP UI5日期字段关于时区GMT的处理

SAP日期 处理 关于 UI5 时区
2023-09-14 09:02:41 时间

关于处理时区那部分,昨天不知道后台也是按GMT的时区来存时间的,我重新整理补充一下:

现在的代码需要计算时区的原因是Fiori UI上也要显示GMT时区的时间,因为从后台是按GMT时间返回给OData Call,然后被浏览器转换成了本地时区,所以现有的code要重新转换回GMT。

从后台OData传到前台是按GMT时区的字符串传递:

clipboard1

clipboard2

返回的OData和后台的的时间都是GMT的时间。

UI5控件做format的时候传给format方法的时间已经按照浏览器的时区转换为当地时区了:
clipboard3

所以format的代码里面要处理local time和GMT time的时间差,好让Fiori UI上也显示GMT时区的时间:
oValue.setMinutes(oValue.getTimezoneOffset());

Jerry昨天发现的BUG我这边也能重现了,我建了三条前台都显示的是昨天23号:
clipboard4

            在后台看都是24号:

clipboard5

            而且在前端date format的方法执行结束之后也还是24号:

clipboard6

clipboard7

很奇怪,可能是UI5的控件本身有问题,没时间深究,我暂时把这个问题记下来。

要获取更多Jerry的原创文章,请关注公众号"汪子熙":