加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何扩展或覆盖angularjs中的现有过滤器?

发布时间:2020-12-17 08:37:07 所属栏目:安全 来源:网络整理
导读:是否可以扩展现有的“标准”过滤器(日期,数字,小写等)? 在我的情况下,我需要解析日期从YYYYMMDDhhmmss格式,所以我想扩展(或重写)日期过滤器,而不是写我自己的。 我不知道我是否正确理解你的问题,但如果你想扩展现有过滤器的功能,你可以创建一个新的
是否可以扩展现有的“标准”过滤器(日期,数字,小写等)?
在我的情况下,我需要解析日期从YYYYMMDDhhmmss格式,所以我想扩展(或重写)日期过滤器,而不是写我自己的。
我不知道我是否正确理解你的问题,但如果你想扩展现有过滤器的功能,你可以创建一个新的过滤器来装饰一个现有的过滤器。例:
myApp.filter('customDate',function($filter) {
    var standardDateFilterFn = $filter('date');
    return function(dateToFormat) {
     return 'prefix ' + standardDateFilterFn(dateToFormat,'yyyyMMddhhmmss');
    };
});

然后,在您的模板:

{{now | customDate}}

说了以上,如果你只是想格式化一个日期根据给定的格式,这可以用现有的日期过滤器:

{{now | date:'yyyyMMddhhmmss'}}

这里是工作jsFiddle说明这两种技术:http://jsfiddle.net/pkozlowski_opensource/zVdJd/2/

请注意,如果没有指定格式,AngularJS将假定这是一个“中”格式(确切的格式取决于区域设置)。检查http://docs.angularjs.org/api/ng.filter:date更多。

最后一句话:我对你的问题的“解析”部分有点困惑。事情是,过滤器用于解析一个对象(在这种情况下的日期)到字符串,而不是反之亦然。如果你在解析表示日期的字符串(输入)之后,你必须查看NgModelController#$ parsers(检查http://docs.angularjs.org/guide/forms中的“自定义验证”部分)。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读