Как я могу правильно отформатировать дату с помощью AngularJS

#angularjs #date #momentjs

Вопрос:

У меня есть эта строка кода, которая форматирует дату в формат ММ/ДД/ГГГГ. Мой вопрос в том, что бы я передал в качестве параметра вместо «ММ/ДД/ГГГГ», чтобы вместо этого получить дату для отображения чего-то вроде 17 марта 2021 года?

элемент.найти(«вход»). val(moment.tz(ngModel.$viewValue,константы.часовой пояс).формат(‘ММ/ДД/ГГГГ’));

Ответ №1:

Вы можете использовать параметры форматирования, предоставляемые momentjs https://momentjs.com/docs/#/parsing/string-format/.

В вашем случае вы можете попробовать этот способ. Передайте свою пользовательскую дату внутри moment()

 console.log(moment().format("MMMM DD, YYYY")); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script> 

Ответ №2:

Базовая функция может помочь,

 $scope.dateFormatChange = function (dateString){
    var allDate = dateString.split(' ');
    var thisDate = allDate[0].split('-');
    var newDate = [thisDate[2],thisDate[1],thisDate[0] ].join("-");
    return newDate;
};
 

Работает в обоих направлениях, ДД-ММ-ГГГГ <-> ГГГГ-ММ-ДД