[英]Get human readable time from react native datetime picker
import React from 'react';
import { Text, Button } from 'react-native';
import RNDateTimePicker from '@react-native-community/datetimepicker';
const Timer = ({}) => {
const [picker, setPicker] = React.useState({time: null, date: null});
const [mode, setMode] = React.useState(null);
const setTimer = (event, time) => {
if (mode == 'date') {
if (time) setPicker(e => ({...e, date: time}));
setMode('time');
} else if (time && picker.date ) {
setPicker(e => ({...e, time: time}));
// do something here
}
}
const humanReadable = () => {/* return human readable date time format (2022/05:31 13:59:00) */}
return (
<>
<Text>{ humanReadable() }</Text>
<Button value="Get Date & Time" onPress={() => setMode("date")} />
{
mode && (
<RNDateTimePicker
onChange={setTimer}
mode={mode}
display={mode=='date' ? "calendar" : "clock"}
themeVariant="light"
value={picker[mode] ?? new Date()}
/>
)
}
</>
)
}
因为我正在使用 android。 所以我没有设置模式“日期时间”的选项。 这就是为什么我在这里添加了这个。 我的问题是如何获得人类可读的日期时间
也许看看这个库https://date-fns.org
这是我如何使用它:
//IMPORT FIRST
import { format } from 'date-fns';
import { fr } from 'date-fns/locale';
//THEN IN YOUR JSX
<Text>
{format(dateValue, 'dd MMMM yyyy', { locale: fr })}
</Text>
您可以使用moment.js
它是格式化日期的一个了不起的模块。 请看一看。
对于您的格式,您可以执行以下操作,
import moment from 'moment'; moment().format("YYYY/MM/DD hh:mm:ss");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.