Изменить время часть даты с моментами - PullRequest
0 голосов
/ 06 ноября 2019

Здравствуйте, я получаю от datepicker событие onChange на эту дату, например.

2019-11-21T20:59:00.000Z

как я могу изменить здесь только часы, минуты и секунды, чтобы часть времени была частью даты?

Ответы [ 4 ]

0 голосов
/ 06 ноября 2019

это дает вам 24 часа времени, как это 20: 59: 00

moment.utc('2019-11-21T20:59:00.000Z').format('HH:mm:ss')

это дает вам 12 часов времени, как это 08: 59: 00

moment.utc('2019-11-21T20:59:00.000Z').format('hh:mm:ss')

, используя это, вы получаете часы, минуты и секунды

0 голосов
/ 06 ноября 2019

var date = '2019-11-21T20:59:00.000Z';
console.log(moment(date).format('YYYY-MM-DD'))
<!-- with hours, -->
console.log(moment(date).format('hh:mm:ss'))
console.log(moment.utc(date).format('hh:mm:ss'))
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
0 голосов
/ 06 ноября 2019

Чтобы изменить часы, минуты и секунды, просто используйте функцию добавления в moment.js, как показано. Вы можете заменить параметр в .utc() на переменную даты.

var date = moment.utc('2019-11-21T20:59:00.000Z')
        .add(20, 'seconds')
        .add(10, 'minutes')
        .add(3, 'hours')

Чтобы удалить эти единицы, также будет работать отрицательное число

0 голосов
/ 06 ноября 2019

Вы можете использовать hour(), minute() и second() методы moment

onChange = (event) => {
   const mmnt = moment(event);

   const hours = 1;
   const minutes = 1;
   const seconds = 1;
   return mmnt.hour(hours).minute(minutes).second(seconds).toDate();

}
...