3 回答

TA贡献1853条经验 获得超18个赞
你可以做这样的事情:-
const date = new Date(<date coming from API response>); // new Date("2019-08-22T23:50:00Z")
const hours = date.getHours();
const minutes = date.getMinutes();
然后你可以在你的组件中显示它们。

TA贡献1813条经验 获得超2个赞
这只是在渲染之前格式化日期值的问题,您不想更改任何减速器代码,例如
const hours = `${dt.getHours()}:${dt.getMinutes()}`;
这将使本地时间依赖于浏览器时区,即
const dt = new Date('2019-11-11T11:43:18.026Z');
console.log(`${dt.getHours()}:${dt.getMinutes()}`); // 22:43 if in Australia (UTC+11)
这是TableData.js您需要进行的更改:
{data.map(item => {
const dt = new Date(item.actual);
const mins = dt.getMinutes();
return (
<tr key={item.ID}>
<td>{item.term}</td>
<td>{item.gateNo}</td>
<td>{`${dt.getHours()}:${mins < 10 ? '0' : ''}${mins}`}</td>
<td>
{item["airportToID.city_en"]
? item["airportToID.city_en"]
: item["airportFromID.city_en"]}
</td>
<td>{item.airline.en.name}</td>
<td>{item["planeTypeID.code"]}</td>
<td>{item.status}</td>
</tr>
)
})}

TA贡献1836条经验 获得超5个赞
您可以创建一个Date对象,然后在 Date 对象上使用方法,如下所示:
let theDate = new Date("2019-08-22T23:50:00Z");
console.log(theDate.getHours() + ':' + theDate.getMinutes());
会输出:
0:50
添加回答
举报