如何在AngularJS中将日期格式的一部分转换为大写

3
{{main.featured.date | date:'EEEE, MMMM d, yyyy'}}
//Wednesday, March 16, 2016

//But I want: WEDNESDAY, March 16, 2016

有没有不需要编写自己的过滤器来完成此操作的方法?

我已经添加了一个示例来查看我的代码的运行情况。 - Cosmin Ababei
1个回答

4
您可以使用内置的大写过滤器。您只需要将日期拆分为两个部分,像这样:{{(vm.myDate | date : 'EEEE, ' | uppercase) + (vm.myDate | date : 'MMMM d, yyyy')}} 以下是一个工作示例:

(function() {
  angular
    .module('myApp', [])
    .controller('MainCtrl', function() {
      var vm = this;

      vm.myDate = new Date().getTime();
    });
})();
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.3/angular.min.js"></script>

<div ng-app="myApp">
  <div ng-controller="MainCtrl as vm">
    Current date: {{ (vm.myDate | date : 'EEEE, ' | uppercase) + (vm.myDate | date : 'MMMM d, yyyy') }}
  </div>
</div>


这将显示WEDNESDAY, MARCH 16, 2016,但他想要:WEDNESDAY,March 16, 2016。 - henrikmerlander
1
这就是为什么我将其分成两个表达式的原因。第一个表达式显示大写日期,第二个表达式则显示其余部分。 - Cosmin Ababei
啊,抱歉,我现在明白你是怎么使用它的了! - henrikmerlander

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接