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 相关文章推荐
学习ExtJS Panel常用方法
Oct 07 Javascript
JavaScript 面向对象之命名空间
May 04 Javascript
Jquery+ajax请求data显示在GridView上(asp.net)
Aug 27 Javascript
jquery.form.js用法之清空form的方法
Mar 07 Javascript
无限树Jquery插件zTree的常用功能特性总结
Sep 11 Javascript
node.js中的url.parse方法使用说明
Dec 10 Javascript
jQuery动态创建元素以及追加节点的实现方法
Oct 20 Javascript
基于vue实现多引擎搜索及关键字提示
Mar 16 Javascript
详解Vue学习笔记入门篇之组件的内容分发(slot)
Jul 17 Javascript
手写简单的jQuery雪花飘落效果实例
Apr 22 jQuery
vue的传参方式汇总和router使用技巧
May 22 Javascript
Vue中使用create-keyframe-animation与动画钩子完成复杂动画
Apr 09 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
使用openssl实现rsa非对称加密算法示例
2014/01/24 PHP
PHP实现QQ快速登录的方法
2016/09/28 PHP
PHP生成唯一ID之SnowFlake算法
2016/12/17 PHP
PHP登录(ajax提交数据和后台校验)实例分享
2016/12/29 PHP
javaScript checkbox 全选/反选及批量删除
2010/04/28 Javascript
jQuery的链式调用浅析
2010/12/03 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
js以及jquery实现手风琴效果
2020/04/17 Javascript
Vue分页组件实例代码
2017/04/17 Javascript
基于jQuery Easyui实现登陆框界面
2017/07/10 jQuery
基于构造函数的五种继承方法小结
2017/07/27 Javascript
了解Javascript中函数作为对象的魅力
2019/06/19 Javascript
JS实现的排列组合算法示例
2019/07/16 Javascript
vue 自定义右键样式的实例代码
2019/11/06 Javascript
[02:47]DOTA2亚洲邀请赛 HR战队出场宣传片
2015/02/07 DOTA
[51:29]完美世界DOTA2联赛循环赛 Matador vs Forest BO2第一场 11.05
2020/11/05 DOTA
python中异常报错处理方法汇总
2016/11/20 Python
python保存数据到本地文件的方法
2018/06/23 Python
Django中URL的参数传递的实现
2019/08/04 Python
Python如何定义有默认参数的函数
2020/08/10 Python
pip/anaconda修改镜像源,加快python模块安装速度的操作
2021/03/04 Python
纯CSS3制作的简洁蓝白风格的登录模板(非IE效果更好)
2013/08/11 HTML / CSS
adidas美国官网:adidas US
2016/09/21 全球购物
Algenist奥杰尼官网:微藻抗衰老护肤品牌
2017/07/15 全球购物
墨尔本复古时尚品牌:Dangerfield
2018/12/12 全球购物
汽车驾驶求职信
2013/10/25 职场文书
资产经营总监岗位职责
2013/12/04 职场文书
访谈节目策划方案
2014/05/15 职场文书
公司年底活动方案
2014/08/17 职场文书
纪念九一八爱国演讲稿600字
2014/09/14 职场文书
起诉离婚协议书样本
2014/11/25 职场文书
师德标兵事迹材料
2014/12/19 职场文书
感恩教师主题班会
2015/08/12 职场文书
小学班主任工作经验交流材料
2015/11/02 职场文书
小程序后台PHP版本部署运行 LNMP+WNMP
2021/04/01 Servers
vscode中使用npm安装babel的方法
2021/08/02 Javascript