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 相关文章推荐
JQuery扩展插件Validate 3通过参数设置错误信息
Sep 05 Javascript
JS模板实现方法
Apr 03 Javascript
javascript中的nextSibling使用陷(da)阱(keng)
May 05 Javascript
javascript实现保留两位小数的多种方法
Dec 18 Javascript
JS控制伪元素的方法汇总
Apr 06 Javascript
第六章之辅组类与响应式工具
Apr 25 Javascript
JavaScript实现页面定时刷新(定时器,meta)
Oct 12 Javascript
基于JavaScript实现全选、不选和反选效果
Feb 15 Javascript
详解webpack2+node+react+babel实现热加载(hmr)
Aug 24 Javascript
jQuery发请求传输中文参数乱码问题的解决方案
May 22 jQuery
Vue.js页面中有多个input搜索框如何实现防抖操作
Nov 04 Javascript
JavaScript对象字面量和构造函数原理与用法详解
Apr 18 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项目的方法
2006/10/09 PHP
php封装的smartyBC类完整实例
2016/10/19 PHP
php将服务端的文件读出来显示在web页面实例
2016/10/31 PHP
php微信开发之自定义菜单实现
2016/11/18 PHP
html下载本地
2006/06/19 Javascript
JavaScript 应用类库代码
2008/06/02 Javascript
js url传值中文乱码之解决之道
2009/11/20 Javascript
JQuery中使用on方法绑定hover事件实例
2014/12/09 Javascript
HTML+CSS+JS实现完美兼容各大浏览器的TABLE固定列
2015/04/26 Javascript
js实现鼠标移到链接文字弹出一个提示层的方法
2015/05/11 Javascript
原生js实现百叶窗效果及原理介绍
2016/04/12 Javascript
javascript事件冒泡简单示例
2016/06/20 Javascript
Highcharts学习之坐标轴
2016/08/02 Javascript
Select2.js下拉框使用小结
2016/10/24 Javascript
Angular2 路由问题修复详解
2017/03/01 Javascript
JavaScript函数节流的两种写法
2017/04/07 Javascript
NodeJs使用Mysql模块实现事务处理实例
2017/05/31 NodeJs
Auto.js自动收取自己和好友蚂蚁森林能量脚本
2018/06/28 Javascript
vue element动态渲染、移除表单并添加验证的实现
2019/01/16 Javascript
Element-UI中关于table表格的那些骚操作(小结)
2019/08/15 Javascript
Vue实现穿梭框效果
2020/09/30 Javascript
Vue页面渲染中key的应用实例教程
2021/01/12 Vue.js
Python中使用OpenCV库来进行简单的气象学遥感影像计算
2016/02/19 Python
python的paramiko模块实现远程控制和传输示例
2017/10/13 Python
实时获取Python的print输出流方法
2019/01/07 Python
python求一个字符串的所有排列的实现方法
2020/02/04 Python
资生堂英国官网:Shiseido英国
2020/12/30 全球购物
八一建军节活动方案
2014/02/10 职场文书
经理管理专业毕业自荐书范文
2014/02/12 职场文书
体育课课后反思
2014/04/24 职场文书
医院义诊活动总结
2014/07/04 职场文书
团党委领导干部党的群众路线教育实践活动个人对照检查材料思想汇
2014/10/05 职场文书
人事专员岗位职责
2015/02/03 职场文书
太空授课观后感
2015/06/17 职场文书
修辞手法有哪些?
2019/08/29 职场文书
导游词之沈阳植物园
2019/11/30 职场文书