AngularJS 过滤器的简单实例


Posted in Javascript onJuly 27, 2016

AngularJS 过滤器

过滤器可以使用一个管道字符(|)添加到表达式和指令中。

AngularJS 过滤器

AngularJS 过滤器可用于转换数据:

过滤器 描述
currency 格式化数字为货币格式。
filter 从数组项中选择一个子集。
lowercase 格式化字符串为小写。
orderBy 根据某个表达式排列数组。
uppercase 格式化字符串为大写。

表达式中添加过滤器

过滤器可以通过一个管道字符(|)和一个过滤器添加到表达式中。.

((下面的两个实例,我们将使用前面章节中提到的 person 控制器))

uppercase 过滤器将字符串格式化为大写:

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="personCtrl">

<p>姓名为 {{ lastName | uppercase }}</p>

</div>

<script src="personController.js"></script>

</body>
</html>

 运行结果:

 姓名为   DOE

 lowercase 过滤器将字符串格式化为小写:

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="personCtrl">

<p>姓名为 {{ lastName | lowercase }}</p>

</div>

<script src="personController.js"></script>

</body>
</html>

 运行结果:

姓名为  doe

 currency 过滤器

currency 过滤器将数字格式化为货币格式:

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="costCtrl">

数量: <input type="number" ng-model="quantity">
价格: <input type="number" ng-model="price">

<p>总价 = {{ (quantity * price) | currency }}</p>

</div>

<script>
var app = angular.module('myApp', []);
app.controller('costCtrl', function($scope) {
  $scope.quantity = 1;
  $scope.price = 9.99;
});
</script>

</body>
</html>

 运行结果:

数量:  价格: 

总价 = $9.99

向指令添加过滤器

过滤器可以通过一个管道字符(|)和一个过滤器添加到指令中。

orderBy 过滤器根据表达式排列数组:

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="namesCtrl">

<p>循环对象:</p>
<ul>
 <li ng-repeat="x in names | orderBy:'country'">
  {{ x.name + ', ' + x.country }}
 </li>
</ul>

</div>

<script src="namesController.js"></script>

</body>
</html>

运行结果:

循环对象:

  • Kai, Denmark
  • Jani, Norway
  • Hege, Sweden

过滤输入

输入过滤器可以通过一个管道字符(|)和一个过滤器添加到指令中,该过滤器后跟一个冒号和一个模型名称。

filter 过滤器从数组中选择一个子集:

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="namesCtrl">

<p>输入过滤:</p>

<p><input type="text" ng-model="test"></p>

<ul>
 <li ng-repeat="x in names | filter:test | orderBy:'country'">
  {{ (x.name | uppercase) + ', ' + x.country }}
 </li>
</ul>

</div>

<script src="namesController.js"></script>

</body>
</html>

运行效果:

输入过滤:

  • KAI, Denmark
  • JANI, Norway
  • HEGE, Sweden

以上就是对AngularJS 过滤器的知识整理,后续继续补充,有需要的朋友可以参考下。

Javascript 相关文章推荐
Javascript Global对象
Aug 13 Javascript
使用jquery实现图文切换效果另加特效
Jan 20 Javascript
js编码、解码函数介绍及其使用示例
Sep 05 Javascript
比较新旧两个数组值得增加和删除的JS代码
Oct 30 Javascript
基于javascript实现动态时钟效果
Aug 18 Javascript
深入理解jQuery之事件移除
Jun 02 Javascript
JavaScript解析JSON格式数据的方法示例
Jan 24 Javascript
JS中精巧的自动柯里化实现方法
Dec 12 Javascript
vue 路由嵌套高亮问题的解决方法
May 17 Javascript
基于Vue全局组件与局部组件的区别说明
Aug 11 Javascript
js闭包的9个使用场景
Dec 29 Javascript
WebWorker 封装 JavaScript 沙箱详情
Nov 02 Javascript
AngularJS延迟加载html template
Jul 27 #Javascript
AngularJS入门教程之控制器详解
Jul 27 #Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
Jul 27 #Javascript
AngularJS入门教程之Scope(作用域)
Jul 27 #Javascript
AngularJS入门之动画
Jul 27 #Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
Jul 27 #Javascript
获取JS中网页各种高宽与位置的方法总结
Jul 27 #Javascript
You might like
PHP优于Node.js的五大理由分享
2012/09/15 PHP
php中url函数介绍及使用示例
2014/02/13 PHP
PHP环境中Memcache的安装和使用
2015/11/05 PHP
高质量PHP代码的50个实用技巧必备(上)
2016/01/22 PHP
Ajax,UTF-8还是GB2312 eval 还是execScript
2008/11/13 Javascript
javaScript 判断字符串是否为数字的简单方法
2009/07/25 Javascript
firefox火狐浏览器与与ie兼容的2个问题总结
2010/07/20 Javascript
前端开发的开始---基于面向对象的Ajax类
2010/09/17 Javascript
jQuery下扩展插件和拓展函数的写法(匿名函数使用的典型例子)
2010/10/20 Javascript
javascript来定义类的规范小结
2010/11/19 Javascript
jQuery 在光标定位的地方插入文字的插件
2012/05/10 Javascript
JavaScript中的slice()方法使用详解
2015/06/06 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
2016/06/12 Javascript
JavaScript中清空数组的三种方式
2017/03/22 Javascript
jQuery Jsonp跨域模拟搜索引擎
2017/06/17 jQuery
JavaScript实现拖拽和缩放效果
2020/08/24 Javascript
vue项目打包后请求地址错误/打包后跨域操作
2020/11/04 Javascript
[01:45]DOTA2新英雄“神谕者”全方位展示
2014/11/21 DOTA
[57:53]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#3OG VS VP
2016/03/03 DOTA
python自然语言编码转换模块codecs介绍
2015/04/08 Python
归纳整理Python中的控制流语句的知识点
2015/04/14 Python
Python中类的初始化特殊方法
2017/12/01 Python
Python实现读取txt文件并画三维图简单代码示例
2017/12/09 Python
Python函数返回不定数量的值方法
2019/01/22 Python
利用anaconda作为python的依赖库管理方法
2019/08/13 Python
python 双循环遍历list 变量判断代码
2020/05/04 Python
HTML5和以前HTML4的区别整理
2013/10/20 HTML / CSS
eBay瑞士购物网站:eBay.ch
2018/12/24 全球购物
Nike加拿大官网:Nike.com (CA)
2019/04/09 全球购物
J2EE模式面试题
2016/10/11 面试题
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
普通党员个人整改措施
2014/10/27 职场文书
《我在为谁工作》:工作的质量往往决定生活的质量
2019/12/27 职场文书
基于tensorflow权重文件的解读
2021/05/26 Python
mysql5.7使用binlog 恢复数据的方法
2021/06/03 MySQL
Redis 的查询很快的原因解析及Redis 如何保证查询的高效
2022/03/16 Redis