I have two Time field
in my Custom Object Start Time
and `End Time
Start Time Value ==>8:30 AM
End Time Value ==>6:00 PM
From Apex Wrapper class I'm returning the time values.
@AuraEnabled
public time startTime {get;set;}
@AuraEnabled
public time endTime {get;set;}
While, I'm displaying the data in LWC data table time value is different
Column = {
label: "Start Time",
fieldName: "Start_Time__c",
type: "date",
typeAttributes: {
hour: "2-digit",
minute: "2-digit",
hour12: true
}
},
{
label: "End Time",
fieldName: "End_Time__c",
type: "date",
typeAttributes: {
hour: "2-digit",
minute: "2-digit"
}
},
Start Time is 02:00 PM
and End Time is 11:30 PM
.
below is the response from the Controller.
"startTime": 30600000,
"endTime": 64800000
Can anyone guide me on this.
Best Answer
You should use
timeZone
- either static or dynamically getting user`s timezone:Explanation:
The lightning-formatted-date-time which is used by
datatable
by default fordate/datetime
types, takes the timezone of your system by default. However, you can change the timezone by using attributetimeZone
. Optionally, you can also show the timeZone usingtime-zone-name
Playground example:
will output:
Although the same date is used, the first date defaulted to
PST
because my system is in PST.Official timezones:
You can get officially supported timezones from here: