Строка даты формата выбора диапазона дат Angular2

Я использую этот календарь в своем веб-приложении Angular2/Spring:

https://www.npmjs.com/package/ng2-daterangepicker

http://www. выбор диапазона дат . ком/

Я столкнулся с проблемой форматирования вывода даты. Из официальной документации это объект, отвечающий за форматирование даты:

locale.format: "MM/DD/YY" // который возвращает 13.05.2017

Тем не менее, я заинтересован в более удобном для пользователя выводе. Например: май 2017 г..

Как мне это сделать? Где я могу найти буквы, которые могут отформатировать мою дату в Javascript (например, в PHP: http://php.net/manual/en/function.date.php).

Большое спасибо за ответы.


person mixi    schedule 13.05.2017    source источник


Ответы (2)


На вашем месте я бы избавил себя от работы с датами в Javascript и скачал Moment.js. Если вы используете npm, вы можете установить его с помощью

npm install moment --save

Даты — это боль для работы в vanilla JS, поэтому момент — действительно мощная библиотека, которая позволяет вам «разбирать, проверять, манипулировать и отображать даты и время» очень легко. Чтобы использовать его в своем компоненте Angular2, вам просто нужно импортировать его в свой компонент после его загрузки.

import * as moment from 'moment';

Затем вы можете отформатировать дату вывода, используя функцию format().

let rangePickerValue = new Date(); // example date
moment(rangePickerValue).format('MMMM YYYY'); // May 2017

Вы можете увидеть, какие параметры вывода времени и даты существуют в документации момента: здесь. Например, MMMM выводит полное название месяца (январь, февраль, март...), а MMM печатает (январь, февраль, март...).

person Federico Pettinella    schedule 14.05.2017
comment
Собственно, мне удалось справиться с проблемой без Momentjs. Тем не менее, это помогло мне понять, какие буквы я могу использовать для форматирования даты. Ответ на мое решение - формат («МММ ДД»). Спасибо, мой брат. Ваше здоровье! - person mixi; 14.05.2017

вы можете использовать DatePipe

expression | date: format

пример

{{ date | date: "MMMM yyyy" /* your format */ }}

результат: май 2017

person linhao    schedule 14.05.2017
comment
Я не могу использовать канал, потому что у меня нет даты, которую нужно преобразовать в этот момент. Поэтому в официальной документации нам нужно использовать объект локали, чтобы установить формат, который будет применяться после того, как пользователь выберет дату. - person mixi; 14.05.2017