AngularJS常见过滤器用法实例总结


Posted in Javascript onJuly 06, 2017

本文实例讲述了AngularJS常见过滤器用法。分享给大家供大家参考,具体如下:

过滤器用来格式化需要展示给用户的数据。在HTML中的模板绑定符号 {{ }} 内通过 | 符号来调用过滤器。以下是常用的过滤器。

大小写过滤器

{{ name | uppercase }} 大写过滤器
{{ name | lowercase}} 小写过滤器

实例:(大写过滤器)

<div ng-controller='myController'>
  姓氏: <input type="text" ng-model="student.firstName"></br></br>
  名字: <input type="text" ng-model="student.lastName"></br></br>
  名字转大写: {{student.fullName() | uppercase}}
</div>
<script>
var app=angular.module('app',[]);
app.controller('myController',function($scope){
  $scope.student={
    firstName: "xu",
    lastName: "xiaohong",
    fullName:function(){
      var studentObject;
      studentObject = $scope.student;
      return studentObject.firstName + studentObject.lastName;
    }
  };
});
</script>

货币过滤器

currecy 过滤器可以将一个数值格式化为货币格式。用 {{ 123 | currency }} 来将123转化成货币格式。currecy 过滤器允许我们自己设置货币符号。默认情况下会采用客户端所处区域的货币符号,但是也可以自定义货币符号。如下:

<div ng-controller='myController'>
  Enter fees: <input type="text" ng-model="student.fees"></br>
  fees: {{student.fees | currency:'¥'}}
</div>
<script>
var app=angular.module('app',[]);
app.controller('myController',function($scope){
  $scope.student={
    fees:500
  };
});
</script>

日期过滤器

date 过滤器可以将日期格式化成需要的格式。如下:

<div ng-controller='myController'>
  {{data | date : 'yyyy-MM-dd hh:mm:ss EEEE'}}
</div>
<script>
var app=angular.module('app',[]);
app.controller('myController',function($scope){
  $scope.data=new Date();
});
</script>

limitTo过滤器

limitTo过滤器用来截取数组或字符串,接收一个参数用来指定截取的长度。实例:

<body ng-controller="test">
  {{ childrenArray | limitTo : 2 }}
  <script>
    var app=angular.module('app',[]);
    app.controller('test',function($scope){
      $scope.childrenArray = [
        {name:'kimi',age:3},
        {name:'cindy',age:4},
        {name:'anglar',age:4},
        {name:'shitou',age:6},
        {name:'tiantian',age:5}
      ];
    });
  </script>
</body>

orderBy过滤器:

orderBy过滤器可以将一个数组中的元素进行排序,接收一个参数来指定排序规则,参数可以是一个字符串,表示以该属性名称进行排序。可以是一个函数,定义排序属性。还可以是一个数组,表示依次按数组中的属性值进行排序(若按第一项比较的值相等,再按第二项比较),还是拿上面的孩子数组举例:

<div>{{ childrenArray | orderBy : 'age' }}</div>   //按age属性值进行排序
<div>{{ childrenArray | orderBy : orderFunc }}</div>  //按照函数的返回值进行排序
<div>{{ childrenArray | orderBy : ['age','name'] }}</div> //如果age相同,按照name进行排序

自定义过滤器:

AngularJS编写自定义过滤器的形式和AngularJS的factory service非常相像,一定记得它返回一个对象或者是一个函数即可,编写的时候,只需要一个带有一个以上参数的函数即可。格式大致如下:

app.filter('filter(过滤器)名称',function(){
      return function(需要过滤的对象,过滤器参数1,过滤器参数2,...){
           //...执行业务逻辑代码
           return 处理后的对象;
      }
});

实例:(首字母大写)

{{ 'ginger loves dog treats' | capitalize }}
<script>
  var app=angular.module('app',[]);
  app.filter('capitalize',function(){
    return function(input){
      if(input){
        return input.charAt(0).toUpperCase() + input.slice(1);
      }
    }
  })
</script>

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
jQuery源码分析-05异步队列 Deferred 使用介绍
Nov 14 Javascript
jquery入门必备的基本认识及实例(整理)
Jun 24 Javascript
深入理解JQuery keyUp和keyDown的区别
Dec 12 Javascript
常用的JS验证和函数汇总
Dec 23 Javascript
深入理解JavaScript系列(36):设计模式之中介者模式详解
Mar 04 Javascript
jquery.mousewheel实现整屏翻屏效果
Aug 30 Javascript
详解javascript实现瀑布流绝对式布局
Jan 29 Javascript
Angularjs自定义指令实现三级联动 选择地理位置
Feb 13 Javascript
Vue.js弹出模态框组件开发的示例代码
Jul 26 Javascript
Angular在模板驱动表单中自定义校验器的方法
Aug 09 Javascript
Vue中对比scoped css和css module的区别
May 17 Javascript
JS sort方法基于数组对象属性值排序
Jul 10 Javascript
Vue学习之路之登录注册实例代码
Jul 06 #Javascript
AngularJS中ng-class用法实例分析
Jul 06 #Javascript
jQuery 实现图片的依次加载图片功能
Jul 06 #jQuery
JS图片轮播与索引变色功能实例详解
Jul 06 #Javascript
jQuery+ajax实现修改密码验证功能实例详解
Jul 06 #jQuery
vue2.0 keep-alive最佳实践
Jul 06 #Javascript
angular框架实现全选与单选chekbox的自定义
Jul 06 #Javascript
You might like
用PHP实现登陆验证码(类似条行码状)
2006/10/09 PHP
PHP清除字符串中所有无用标签的方法
2014/12/01 PHP
CodeIgniter连贯操作的底层原理分析
2016/05/17 PHP
Yii框架实现的验证码、登录及退出功能示例
2017/05/20 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
strpos() 函数判断字符串中是否包含某字符串的方法
2019/01/16 PHP
jquery事件机制扩展插件 jquery鼠标右键事件。
2011/12/26 Javascript
JS获取后台Cookies值的小例子
2013/03/04 Javascript
jQuery中prependTo()方法用法实例
2015/01/08 Javascript
JQuery勾选指定name的复选框集合并显示的方法
2015/05/18 Javascript
详解JavaScript的AngularJS框架中的作用域与数据绑定
2016/03/04 Javascript
jQuery编写textarea输入字数限制代码
2017/03/23 jQuery
结合Vue控制字符和字节的显示个数的示例
2018/05/17 Javascript
d3.js 地铁轨道交通项目实战
2019/11/27 Javascript
Vue两个版本的区别和使用方法(更深层次了解)
2020/02/16 Javascript
nuxt.js 在middleware(中间件)中实现路由鉴权操作
2020/11/06 Javascript
[02:31]2018年度DOTA2最具人气选手-完美盛典
2018/12/16 DOTA
Python中的赋值、浅拷贝、深拷贝介绍
2015/03/09 Python
python调用机器喇叭发出蜂鸣声(Beep)的方法
2015/03/23 Python
Python3学习urllib的使用方法示例
2017/11/29 Python
matplotlib 三维图表绘制方法简介
2020/09/20 Python
python自动化测试三部曲之request+django实现接口测试
2020/10/07 Python
新西兰便宜隐形眼镜购买网站:QUICKLENS New Zealand
2019/03/02 全球购物
Invicta手表官方商店:百年制表历史的瑞士腕表品牌
2019/09/26 全球购物
在对linux系统分区进行格式化时需要对磁盘簇(或i节点密度)的大小进行选择,请说明选择的原则
2012/01/13 面试题
2014年十一国庆向国旗敬礼寄语
2014/04/11 职场文书
2014年小学美术工作总结
2014/12/20 职场文书
劳动保障个人工作总结
2015/03/04 职场文书
天气温馨提示语
2015/07/14 职场文书
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
2021/03/29 Python
python读取pdf格式文档的实现代码
2021/04/01 Python
python图片灰度化处理的几种方法
2021/06/23 Python
原型和原型链 prototype和proto的区别详情
2021/11/02 Javascript
maven依赖的version声明控制方式
2022/01/18 Java/Android
一篇文章弄清楚Ajax请求的五个步骤
2022/03/17 Javascript
OpenFeign实现远程调用
2022/08/14 Java/Android