[英]react native with moment.js
我使用本机反应来开发移动应用程序。 我检索了API的一些信息,在该信息上以这种格式循环显示日期:
"2018-06-02T10: 00: 00 2018-06-02T11: 00: 00; 2018-06-03T10: 00: 00 2018-06-03T11: 00: 00"
我知道它是ISO 8601格式,我想使其看起来更好,所以我尝试使用Moment.js,但我做不到。
这是我的代码的一部分(当然,我没有忘记导入Moment.js):
这是我的代码(当然,我没有忘记导入Moment.js):
<View style={styles.contentItem}>
<Text style={styles.text}>{Moment(item.fields.timetable).format('YYYY-MM-DD HH:mm')}</Text>
<Foundation name="clock" style={styles.icons} />
</View>
我发现自己的错误“无效日期”,我做错了吗? 您能帮我还是给我一些线索?
你有一个日期传递给moment
没有日期的数组。 您可以像这样将输入日期格式传递给moment
:
let date = "2018-06-02T10: 00: 00"
let correctDate = moment(date, 'YYYY-MM-DDTHH: mm: ss').format('YYYY-MM-DD HH:mm'),
由于获取日期为String ,因此您需要将其转换为Date,然后可以根据需要更新formate。 以下是答案:
const stillUtc = moment.utc(YOUR_DATE).toDate();
const local = moment(stillUtc).local().format('YYYY-MM-DD HH:mm');
嗯,您的格式不完全是ISO 8601
。 您还有一些额外的空间。
例如,您可以替换2018-06-02T10: 00: 00
由2018-06-02T10:00:00
。 ? (如果日期与时区相同,则可以在2018-06-02T10:00:00Z
末尾添加Z
同时请举一个Date
到Moment
,而不是一个array
。
希望这可以帮助 !
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.