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 相关文章推荐
javascript背投广告代码的完善
Apr 08 Javascript
jQuery 菜单随滚条改为以定位方式(固定要浏览器顶部)
May 24 Javascript
jquery ajax应用中iframe自适应高度问题解决方法
Apr 12 Javascript
javascript实现全局匹配并替换的方法
Apr 27 Javascript
JS实现点击按钮获取页面高度的方法
Nov 02 Javascript
jquery实现简易的移动端验证表单
Nov 08 Javascript
DIV随滚动条滚动而滚动的实现代码【推荐】
Apr 12 Javascript
jQuery调用WebMethod(PageMethod) NET2.0的方法
Apr 15 Javascript
jQuery制作全屏宽度固定高度轮播图(实例讲解)
Jul 08 jQuery
在vue中把含有html标签转为html渲染页面的实例
Oct 28 Javascript
基于PHP pthreads实现多线程代码实例
Jun 24 Javascript
vue-i18n实现中英文切换的方法
Jul 06 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中获取变量的变量名的一段代码的bug分析
2011/07/07 PHP
PHP统一页面编码避免乱码问题
2015/04/09 PHP
PHP使用new StdClass()创建空对象的方法分析
2017/06/06 PHP
Laravel 的数据库迁移的方法
2017/07/31 PHP
PHP html_entity_decode()函数讲解
2019/02/25 PHP
关于laravel后台模板laravel-admin select框的使用详解
2019/10/03 PHP
幻宇的层模拟窗口效果-提供演示和下载
2007/01/20 Javascript
js 设置选中行的样式的实现代码
2010/05/24 Javascript
UserData用法总结 lanyu出品
2010/07/01 Javascript
IE6下出现JavaScript未结束的字符串常量错误的解决方法
2010/11/21 Javascript
jquery中使用ajax获取远程页面信息
2011/11/13 Javascript
js修改table中Td的值(定义td的单击事件)
2013/01/10 Javascript
原生js实现复制对象、扩展对象 类似jquery中的extend()方法
2014/08/30 Javascript
JavaScript 总结几个提高性能知识点(推荐)
2017/02/20 Javascript
浅谈jQuery的bind和unbind事件(绑定和解绑事件)
2017/03/02 Javascript
Javascript执行流程细节原理解析
2020/05/14 Javascript
Js利用正则表达式去除字符串的中括号
2020/11/23 Javascript
[01:07:13]TNC vs Pain 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
python实现SMTP邮件发送功能
2020/06/16 Python
对Python中数组的几种使用方法总结
2018/06/28 Python
django自定义模板标签过程解析
2019/12/14 Python
python+selenium+PhantomJS抓取网页动态加载内容
2020/02/25 Python
解决keras,val_categorical_accuracy:,0.0000e+00问题
2020/07/02 Python
django restframework serializer 增加自定义字段操作
2020/07/15 Python
英国著名的化妆品折扣网站:Allbeauty.com
2016/07/21 全球购物
Linux机考试题
2015/10/16 面试题
办公室主任岗位职责
2013/11/08 职场文书
中秋节超市促销方案
2014/01/30 职场文书
网络管理员岗位职责
2014/03/17 职场文书
群众路线教育党课主持词
2014/04/01 职场文书
公安民警正风肃纪剖析材料
2014/10/10 职场文书
党的群众路线教育实践活动整改落实情况自查报告
2014/10/28 职场文书
2015年度企业工作总结
2015/05/21 职场文书
学习商务礼仪心得体会
2016/01/22 职场文书
《我的伯父鲁迅先生》教学反思
2016/02/16 职场文书