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插件开发之图片放大镜效果(仿淘宝)
Nov 19 Javascript
JavaScript高级程序设计 读书笔记之十 本地对象Date日期
Feb 27 Javascript
JS判定是否原生方法
Jul 22 Javascript
JS实现自动切换文字的导航效果代码
Aug 27 Javascript
使用JavaScript脚本判断页面是否在微信中被打开
Mar 06 Javascript
原生js实现tab选项卡切换
Mar 23 Javascript
JS正则表达式修饰符中multiline(/m)用法分析
Dec 27 Javascript
javascript简单链式调用案例分析
May 10 Javascript
vue-quill-editor+plupload富文本编辑器实例详解
Oct 19 Javascript
tracking.js实现前端人脸识别功能
Apr 16 Javascript
JavaScript组合模式---引入案例分析
May 23 Javascript
iview实现动态表单和自定义验证时间段重叠
Jan 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后台程序与Javascript的两种交互方式
2009/10/25 PHP
PHP遍历数组的几种方法
2012/03/22 PHP
PHP的MVC模式实现原理分析(一相简单的MVC框架范例)
2014/04/29 PHP
Codeigniter整合Tank Auth权限类库详解
2014/06/12 PHP
PHP类相关知识点实例总结
2016/09/28 PHP
PHP XML和数组互相转换详解
2016/10/26 PHP
php基于dom实现读取图书xml格式数据的方法
2017/02/03 PHP
JavaScript中的对象化编程
2008/01/16 Javascript
javascript操作JSON的要领总结
2012/12/09 Javascript
JsRender for object语法简介
2014/10/31 Javascript
手机端转盘抽奖代码分享
2015/09/10 Javascript
微信小程序 页面传参实例详解
2016/11/16 Javascript
JavaScript基于自定义函数判断变量类型的实现方法
2016/11/23 Javascript
jQuery扩展+xml实现表单验证功能的方法
2016/12/25 Javascript
AngularJS动态菜单操作指令
2017/04/25 Javascript
AngularJS实现表单元素值绑定操作示例
2017/10/11 Javascript
vue elementUI table 自定义表头和行合并的实例代码
2019/05/22 Javascript
小程序实现搜索框功能
2020/03/26 Javascript
layui动态加载多表头的实例
2019/09/05 Javascript
微信小程序可滑动月日历组件使用详解
2019/10/21 Javascript
javascript+css实现俄罗斯方块小游戏
2020/06/28 Javascript
python使用PyCharm进行远程开发和调试
2017/11/02 Python
利用Pycharm断点调试Python程序的方法
2018/11/29 Python
Python sklearn KFold 生成交叉验证数据集的方法
2018/12/11 Python
python flask web服务实现更换默认端口和IP的方法
2019/07/26 Python
Python 操作mysql数据库查询之fetchone(), fetchmany(), fetchall()用法示例
2019/10/17 Python
Python操作SQLite/MySQL/LMDB数据库的方法
2019/11/07 Python
tensorflow 自定义损失函数示例代码
2020/02/05 Python
Python requests上传文件实现步骤
2020/09/15 Python
FitFlop美国官网:英国符合人体工学的鞋类品牌
2018/10/05 全球购物
全球性的在线婚纱礼服工厂:27dress.com
2019/03/21 全球购物
如何提高JDBC的性能
2013/04/30 面试题
介绍一下Transact-SQL中SPACE函数的用法
2015/09/01 面试题
项目建议书怎么写
2014/05/15 职场文书
MySQL sql模式设置引起的问题
2022/05/15 MySQL