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 相关文章推荐
js鼠标悬浮出现遮罩层的方法
Jan 28 Javascript
js实现同一个页面多个渐变效果的方法
Apr 10 Javascript
JavaScript的9种继承实现方式归纳
May 18 Javascript
JS拖拽插件实现步骤
Aug 03 Javascript
jQuery EasyUI之DataGrid使用实例详解
Jan 04 Javascript
Javascript类型转换的规则实例解析
Feb 23 Javascript
jquery实现文本框textarea自适应高度
Mar 09 Javascript
JavaScript中日期函数的相关操作知识
Aug 03 Javascript
基于vue2框架的机器人自动回复mini-project实例代码
Jun 13 Javascript
mui back 返回刷新页面的实例
Dec 06 Javascript
Vue2.5通过json文件读取数据的方法
Feb 27 Javascript
Vue路由权限控制解析
Nov 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
Laravel框架定时任务2种实现方式示例
2018/12/08 PHP
PHP代码覆盖率统计详解
2020/07/22 PHP
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
2013/03/25 Javascript
JS实现时间格式化的方式汇总
2013/10/16 Javascript
javascript创建函数的20种方式汇总
2015/06/23 Javascript
javascript下使用Promise封装FileReader
2016/02/19 Javascript
TypeOf这些知识点你了解吗
2016/02/21 Javascript
JavaScript 数组- Array的方法总结(推荐)
2016/07/21 Javascript
Jquery Easyui分割按钮组件SplitButton使用详解(17)
2016/12/18 Javascript
浅析BootStrap中Modal(模态框)使用心得
2016/12/24 Javascript
jQuery实现优雅的弹窗效果(6)
2017/02/08 Javascript
es6的数字处理的方法(5个)
2017/03/16 Javascript
javascript+html5+css3自定义弹出窗口效果
2017/10/26 Javascript
Vue集成Iframe页面的方法示例
2017/12/12 Javascript
Vuejs 单文件组件实例详解
2018/02/09 Javascript
vue-cli初始化项目中使用less的方法
2018/08/09 Javascript
vue2.0 可折叠列表 v-for循环展示的实例
2018/09/07 Javascript
在element-ui的el-tree组件中用render函数生成el-button的实例代码
2018/11/05 Javascript
微信小程序身份证验证方法实现详解
2019/06/28 Javascript
Vue页面渲染中key的应用实例教程
2021/01/12 Vue.js
如何封装Vue Element的table表格组件
2021/02/06 Vue.js
[02:36]DOTA2英雄基础教程 帕格纳
2014/01/20 DOTA
[03:03]2014DOTA2国际邀请赛 EG战队专访
2014/07/12 DOTA
Python开发WebService系列教程之REST,web.py,eurasia,Django
2014/06/30 Python
python base64 decode incorrect padding错误解决方法
2015/01/08 Python
使用Python检测文章抄袭及去重算法原理解析
2019/06/14 Python
Python使用shutil模块实现文件拷贝
2020/07/31 Python
如何安装ruby on rails
2014/02/09 面试题
面试求职的个人自我评价
2013/11/16 职场文书
单身联谊活动方案
2014/01/29 职场文书
我有一个梦想演讲稿
2014/05/05 职场文书
银行竞聘演讲稿
2014/05/16 职场文书
冬季安全检查方案
2014/05/23 职场文书
捐助倡议书
2015/01/19 职场文书
博士生专家推荐信
2015/03/25 职场文书
元宵节晚会主持词
2015/07/01 职场文书