#react-native
#react-native
Вопрос:
Я могу получить функцию даты напрямую, используя moment.js но когда минут меньше 10, значение 0 отображаться не будет.
Пожалуйста, смотрите рисунок ниже, например.
предполагается, что время должно быть 12:02 и 12:03
constructor(props) {
super(props);
this.state = {
datetimefinish: '',
};
}
componentDidMount() {
var that = this;
var date = new Date().getDate('0' Number()); //Current Date
var month = new Date().getMonth() 1; //Current Month
var year = new Date().getFullYear(); //Current Year
var hours = new Date().getHours(); //Current Hours
var min = new Date().getMinutes(); //Current Minutes
var sec = new Date().getSeconds(); //Current Seconds
that.setState({
//Setting the value of the date time
datetimefinish:
hours ':' min
});
}
<Text style={styles.text}>{this.state.datetimefinish}</Text>
Комментарии:
1. использовать moment.js вместо этого или вы можете просто объединить «0» на основе логики.
Ответ №1:
Пожалуйста, попробуйте это, если используете moment.js чтобы получить дату и время
componentDidMount() {
var that = this;
var date = moment()
.format(' HH:mm');
that.setState({ datetime: date });}
Ответ №2:
Вы можете решить с помощью этого:
...
that.setState({
datetimefinish:
`${("0" hours).slice(-2)}:${("0" min).slice(-2)}`
});
...
Ответ №3:
Вы можете попробовать этот код и проанализировать строку, если вам нужно некоторое значение подстроки
var time = new Date();
document.getElementsByTagName("p")[0].innerHTML=time.toTimeString().substring(0, 5);
<p id="time"> </p>
В вашем случае вы можете использовать этот код
<Text style={styles.text}>{this.state.time.toTimeString().substring(0, 5)}</Text>
Примером может быть это приложение для часовых поясов