Как получить текущую дату в React Native - PullRequest
0 голосов
/ 30 марта 2019

Я пытаюсь получить текущий день / месяц / год в приложении React Native.Я новичок в этом, поэтому у меня много сомнений по поводу реализации.

Я пытался следовать следующему решению, но у меня не работает:

currentDay: new Date(),

console.log('Date:'+this.state.currentDay ,);
console.log('Day: '+this.state.currentDay.getDay() , 'Month: ' + this.state.currentDay.getMonth(), 'Year :'+ this.state.currentDay.getYear());

Ответы [ 2 ]

0 голосов
/ 30 марта 2019

Самый простой способ установки момент установки npm --save

Moment - это библиотека JavaScript для манипуляции датой и временем, предназначенная для анализа, проверки, манипулирования и форматирования дат.

Вы можете просто импортировать его в свой код:

import moment from 'moment'; 
var now = moment().format();

Если вы просто хотите получить текущую дату и вывод в желаемом формате, вы можете использовать момент с функцией форматирования

var currentDate = moment().format("DD/MM/YYYY");

Результат

30/03/2019

Вы можете изменить формат даты в соответствии с вашими требованиями, используя библиотеку Moment

Вы можете сослаться на следующие документы, прочитанные о том, как использовать момент и какую функцию они будут обеспечивать

https://momentjs.com

https://devhints.io/moment

0 голосов
/ 30 марта 2019

Вам необходимо добавить функцию getDate() после newDate() .. т.е. var date = new Date.getDate()

Следующий пример кода (который должен прояснить цели реализации) показан на AboutReact.com , где вы можете запустить код онлайн.

import React, { Component } from 'react';

import { StyleSheet, View, Alert, Text } from 'react-native';

export default class App extends Component {
  constructor(props) {
    super(props);
    this.state = {
      //default value of the date time
      date: '',
    };
  }
  componentDidMount() {
    var that = this;

    var date = new Date().getDate(); //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
      date:
        date + '/' + month + '/' + year + ' ' + hours + ':' + min + ':' + sec,
    });
  }

  render() {
    return (
      <View
        style={{
          flex: 1,
          justifyContent: 'center',
          alignItems: 'center',
        }}>
        <Text
          style={{
            fontSize: 20,
          }}>
          Current Date Time
        </Text>
        <Text
          style={{
            fontSize: 20,
            marginTop: 16,
          }}>
          {this.state.date}
        </Text>
      </View>
    );
  }
}

Очевидно, что стиль гибкий, и вы можете опустить элемент time в примере кода (но это может быть полезно для других пользователей) ..

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...