如何将“ react-native-date-picker”值定制为“ yyyy”-“ mm”-“ dd”格式

时间:2019-01-26 11:01:48

标签: react-native

我正在使用react-native-date-picker包来获取日期输入。我正在使用此代码获取价值。

我将Date()类型用于日期变量

this.state = {
    date :new Date()
}

我将此代码作为json对象传递并选择日期

<DatePicker
  date={this.state.date}
  mode = {'date'}
  onDateChange={date => this.setState({date})}
/>

从这里我得到这样的输出。 Sun Dec 23 2018 16:11:00 GMT+0530 (India Standard Time),但我需要像2018-12-23这样来获取它的格式。

enter image description here

如何将日期格式设置为'yyyy'-'mm'-'dd'格式

3 个答案:

答案 0 :(得分:1)

Date提供了toISOString()函数,该函数返回日期字符串,其格式如下:2011-10-05T14:48:00.000Z。 然后,您可以像这样从字符串中提取yyyy-mm-dd格式的日期:

date.toISOString().split('T')[0]

但是要小心,因为此方法首先将日期转换为UTC时间。这意味着,如果您在另一个时区,则由于时间偏移,日期可能会更改为另一天。为防止这种情况,您可以尝试:

const offset = date.getTimezoneOffset();
date = new Date(date.getTime() + (offset*60*1000));
date.toISOString().split('T')[0]

希望我能为您提供帮助!

答案 1 :(得分:0)

从Date对象生成格式化的字符串

date = new Date()//return today

formattedDate = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate()

console.log(formattedDate)

答案 2 :(得分:0)

导入时刻并添加以下行

moment(date).format("YYYY MM DD")