在React中,如何将UTC日期时间转换为表内更可读的字符串



我有一个显示表中记录的react组件。我已经使用"useMemo"来定义表结构和数据。它的一些字段是显示日期的日期格式,如"2020-12-08T07:00:00Z"。我想把它转换成更友好的阅读,即DD:MM:YYYY:时间?

组件

const EziSchedule = () =>{
const scheduleColumns = useMemo(
() => [
{
Header: "Schedule Id",
accessor: "eziScheduleId",
},
{
Header: "Start Time",
accessor: "startTime",   //need to convert??
},
{
Header: "End Time",
accessor: "endTime",    //need to convert??
},
],
[]
);
return (
<div>
<h3>Schedule</h3>
{props.searchCriteria&& props.searchCriteria.siteId!=0 &&
<TableItem          
apiUrl={api.EziTrackerSchedule}
columns={scheduleColumns}
itemType={EcpItemTypes.EziTracker}
customParams= {props.searchCriteria}
selectedRow={selectedScheduleRow}
></TableItems>}

错误

我在useMemo中尝试了以下代码:[…但它抛出了异常

{
Header: "Login DateTime",
accessor: moment("loginDateTime","DD MM YYYY hh:mm:ss"),
},

如果你想用momentjs输出一个包含日期的字符串的变量,你可以使用moment(date(.format(string(。请参阅momentjs-docs

moment().format();                                // "2014-09-08T08:02:17-05:00" (ISO 8601, no fractional seconds)
moment().format("dddd, MMMM Do YYYY, h:mm:ss a"); // "Sunday, February 14th 2010, 3:25:50 pm"
moment().format("ddd, hA");                       // "Sun, 3PM"
moment().format("[Today is] dddd");               // "Today is Sunday"
moment('gibberish').format('YYYY MM DD');         // "Invalid date"

或具有可变

const date = "2021-01-05";
const formatted = moment(date).format(); 

我不能发表评论,所以…

试试这个:

var d = new Date(YOUR DATE HERE);
var n = d.toLocaleString(CODE YOUR COUNTRY);

那么,将是这样的:

var d = new Date('2020-12-08T07:00:00Z');
var n = d.toLocaleString('pt-BR');

结果将是:08/12/2020 04:00:00

来源(这里有所有的国家代码(:https://www.w3schools.com/jsref/jsref_tolocalestring.asp

相关内容

  • 没有找到相关文章

最新更新