AngularJS入门教程之过滤器用法示例


Posted in Javascript onNovember 02, 2016

本文实例讲述了AngularJS过滤器用法。分享给大家供大家参考,具体如下:

在前面几节里我们已经接触过AngularJS的表达式,表达式的作用是向视图中输出字面量或$scope对象中的属性值。在输出之前我们可以通过过滤器来格式化输出的数据。

过滤器的使用非常简单,我们看一下下面的代码:

<!DOCTYPE html>
<html ng-app>
<head lang="en">
 <meta charset="UTF-8">
 <script type="text/javascript" src="angular-1.3.0.14/angular.js"></script>
 <title>tutorial05_1</title>
</head>
<body>
 <p>{{"HELLO WORLD!"| lowercase}}</p>
 <p>{{"hello world!"| uppercase}}</p>
 <p>{{3.1415926| number:2}}</p>
 <p>{{3011| currency}}</p>
</body>
</html>

两个嵌套的大括号即为AngularJs的表达式,我们通过|字符后跟上过滤器名称来调用该过滤器。lowercase,uppercase,number,currency为AngularJs内置的过滤器。

lowercase用来把文本中的字母转换为小写,uppercase和它相反,number过滤器用来控制数字的格式,currency则把数字转换成金额格式。

我们看一下在浏览器中的效果:

AngularJS入门教程之过滤器用法示例

AngularJs提供的内置过滤器功能很有限,下面介绍如何自定义过滤器。

<!DOCTYPE html>
<html ng-app="filterMod">
<head lang="en">
 <meta charset="UTF-8">
 <script type="text/javascript" src="angular-1.3.0.14/angular.js"></script>
 <title>tutorial05_2</title>
</head>
<body>
 <p>{{11314| toRMB}}</p>
<script>
 var filterMod = angular.module("filterMod",[]);
 filterMod.filter("toRMB",function($log)
 {
  var toRMB = function(input)
  {
   var RMBNum = ['零',"壹","贰","叁","肆","伍","陆","柒","捌","玖","拾","佰","仟","万","亿"];
   var inputStr = input + "";
   var inputArr = new Array();
   for(i=0;i<inputStr.length;i++)
   {
    var temp = parseInt(input % 10);
    inputArr.push(temp);
    switch(i)
    {
     case 0:inputArr.push(10);
      break;
     case 1:inputArr.push(11);
      break;
     case 2:inputArr.push(12);
      break;
     case 3:inputArr.push(13);
      break;
    }
    input = input / 10;
   }
   inputArr = inputArr.reverse();
   var output = "";
   for(i=0;i<inputArr.length;i++)
   {
    output += RMBNum[inputArr[i]];
   }
   return output;
  }
  return toRMB;
 });
</script>
</body>
</html>

上面是笔者自定义的一个?⑹?肿?怀扇嗣癖掖笮春鹤值墓?似鳌?/p>

filterMod.filter("toRMB",function($log)...

过滤器的定义和控制器类似,我们通过AngularJs模块的filter方法来完成,第一个参数为过滤器的名称,第二个参数为过滤器实现部分,它必须返回一个数据处理函数。

var toRMB = function(input)...

这一部分为数据处理函数,input为原始输入数据,我们在该函数中对输入数据进行处理,然后return 处理过后的数据即可。

在浏览器中效果:

AngularJS入门教程之过滤器用法示例

注意:这个toRMB 过滤器只是笔者为了演示自定义过滤器的方法而编写的,还有很多不足的地方,有兴趣的读者可以自行完善。

AngularJS源码可点击此处本站下载

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
常用参考资料(手册)下载或者链接
Jul 22 Javascript
jquery实现点击TreeView文本父节点展开/折叠子节点
Jan 10 Javascript
深入理解javascript动态插入技术
Nov 12 Javascript
jquery的ajax简单结构示例代码
Feb 17 Javascript
JS不能跨域借助jquery获取IP地址的方法
Aug 20 Javascript
node.js使用require()函数加载模块
Nov 26 Javascript
js实现透明度渐变效果的方法
Apr 10 Javascript
Avalon中文长字符截取、关键字符隐藏、自定义过滤器
May 18 Javascript
jQuery 选择器(61种)整理总结
Sep 26 Javascript
angular2 ng build部署后base文件路径问题详细解答
Jul 15 Javascript
Vue动态获取width的方法
Aug 22 Javascript
vue图片上传组件使用详解
Dec 23 Javascript
JavaScript基础——使用Canvas绘图
Nov 02 #Javascript
js实现砖头在页面拖拉效果
Nov 20 #Javascript
AngularJS入门教程之模块化操作用法示例
Nov 02 #Javascript
js 打开新页面在屏幕中间的实现方法
Nov 02 #Javascript
jQuery图片切换动画特效
Nov 02 #Javascript
用jQuery的AJax实现异步访问、异步加载
Nov 02 #Javascript
AngularJS入门教程之MVC架构实例分析
Nov 01 #Javascript
You might like
PHP实现的连贯操作、链式操作实例
2014/07/08 PHP
php的XML文件解释类应用实例
2014/09/22 PHP
PHP框架自动加载类文件原理详解
2017/06/06 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
2020/03/30 PHP
Jquery.TreeView结合ASP.Net和数据库生成菜单导航条
2010/08/27 Javascript
JavaScript EasyPager 分页函数
2011/05/25 Javascript
JS回调函数的应用简单实例
2014/09/17 Javascript
javascript实现博客园页面右下角返回顶部按钮
2015/02/22 Javascript
图解Sublime Text3使用技巧
2015/12/21 Javascript
jQuery查看选中对象HTML代码的方法
2016/06/17 Javascript
浅谈JS使用[ ]来访问对象属性
2016/09/21 Javascript
JS多文件上传的实例代码
2017/01/11 Javascript
Bootstrap框架安装使用详解
2017/01/21 Javascript
Node.js使用gm拼装sprite图片
2017/07/04 Javascript
[js高手之路]从原型链开始图解继承到组合继承的产生详解
2017/08/28 Javascript
vue在手机中通过本机IP地址访问webApp的方法
2018/08/15 Javascript
详解Vue前端生产环境发布配置实战篇
2019/05/07 Javascript
详解微信小程序自定义组件的实现及数据交互
2019/07/22 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
python创建进程fork用法
2015/06/04 Python
Python 备份程序代码实现
2017/03/06 Python
python 换位密码算法的实例详解
2017/07/19 Python
PyQt5每天必学之组合框
2018/04/20 Python
python连接PostgreSQL数据库的过程详解
2019/09/18 Python
Python如何使用BeautifulSoup爬取网页信息
2019/11/26 Python
tensorflow:指定gpu 限制使用量百分比,设置最小使用量的实现
2020/02/06 Python
python调用百度AI接口实现人流量统计
2021/02/03 Python
自我评价的写作规则
2014/01/06 职场文书
热爱祖国的演讲稿
2014/05/04 职场文书
家长会标语
2014/06/24 职场文书
电力培训心得体会
2014/09/02 职场文书
公司领导班子对照检查材料
2014/09/24 职场文书
劳动保障个人工作总结
2015/03/04 职场文书
接收函
2019/04/22 职场文书
20180830晚上第一届KSL半决赛 雨神vs解冻(二龙 三炮解说)
2022/04/01 星际争霸
蓝牙耳机怎么连接电脑win11? Win11蓝牙耳机连接电脑的技巧
2023/01/09 数码科技