AngularJs:显示月份编号的月份名称

use*_*386 29 angularjs angularjs-directive

我有月份作为数字(1,2,3,...),并希望显示相应的名称.我怎样才能做到这一点?

是否可以使用 {{ date_expression | date[:format] }}

Rei*_*rkk 44

请查看http://docs.angularjs.org/api/ng.filter:date上的文档.在那里,您将看到所需的格式:

{{date_expression | date:'MMMM'}}
Run Code Online (Sandbox Code Playgroud)

  • 好的,我发现了正在发生的事情.date:'MMMM'必须与Date对象一起使用.因此,不是从0到11的整数数组,我必须这样做:[新日期(2014,0),新日期(2014年,1),新日期(2014年,2年),...]等等. (3认同)

kcs*_*oft 38

如果你有月份索引,你可以创建自己的过滤器:

myApp.filter('monthName', [function() {
    return function (monthNumber) { //1 = January
        var monthNames = [ 'January', 'February', 'March', 'April', 'May', 'June',
            'July', 'August', 'September', 'October', 'November', 'December' ];
        return monthNames[monthNumber - 1];
    }
}]);
Run Code Online (Sandbox Code Playgroud)

然后在你的模板中:

{{date_expression | monthName}}
Run Code Online (Sandbox Code Playgroud)

  • 使用 Angular-locale 时,可以执行以下操作: `function ($locale) { return function (monthNumber) { return $locale.DATETIME_FORMATS.MONTH[monthNumber - 1]; } }` (2认同)