第219天:Angular---过滤器
在Angular中,过滤器的功能主要是格式化数据表达式,且可以自定义过滤器。作用域(scope)主要服务于页面模板,在控制器和页面中起桥梁作用,保存模板中的数据对象,为模板中的元素提供方法和属性。
一、过滤器的表现形式
在angular中有三种变现形式,通过管道字符 “ | ”,与需要处理的代码进行连接,看代码:
1、单个过滤器,如:{{表达式 | 过滤器名}}
货币过滤器 {{8.88 | currency}} // $8.88
2、多个过滤器,如:{{表达式 | 过滤器名1 | 过滤器名2 | ...}}
{{8.88 | currency | filter | ...}}
3、带参数过滤器,如:{{表达式 | 过滤器名1 : 参数1 : 参数2 : ...}}
{{8.88 | number : 1}}
二、angular中自带的九种过滤器
1、currency格式化数字为货币格式。
{{ 8.88 | currency }}// 默认为$8.88
{{ 8.88 | currency : "¥"}} // ¥8.88
2、lowercase过滤器将字符串格式化为小写
姓名为{{ lastName | lowercase }} // zhang $scope.lastName="ZHANG"
3、uppercase过滤器将字符串格式化为大写
{{ lastName | uppercase }} // ZHANG $scope.lastName="zhang"
4、orderBy过滤器根据表达式排列数组
// 根据id降序排序
{{[{"age":20,"id":10,"name":"iphone"},
{"age":12,"id":11,"name":"sunm xing"},
{"age":44,"id":12,"name":"test abc"}]
| orderBy:'id':true}}
// 根据id升序排序
{{[{"age":20,"id":10,"name":"iphone"},
{"age":12,"id":11,"name":"sunm xing"},
{"age":44,"id":12,"name":"test abc"}]
| orderBy:'id'}}
5、filter查找
// 查找name为iphone的行
{{[{"age":20,"id":10,"name":"iphone"},
{"age":12,"id":11,"name":"sunm xing"},
{"age":44,"id":12,"name":"test abc"}]
|filter:{'name':'iphone'}}}//输出的话就是{"age":20,"id":10,"name":"iphone"}
6、limitTo 截取
{{"1234567890"|limitTo:6}}// 从前面开始截取6位
{{"1234567890"|limitTo:-4}}// 从后面开始截取4位
7、date 时间格式化
{{1490161945000 | date:"yyyy-MM-dd HH:mm:ss" }}// 2017-03-22 13:52:25
8、number 格式化(保留小数)
{{149016.1945000|number:2}} //149016.19
9、 json (格式化json对象)
json过滤器可以把一个js对象格式化为json字符串,没有参数。这东西有什么用呢,我一般也不会在页面上输出一个json串啊,官网说它 可以用来进行调试,嗯,是个不错的选择。或者,也可以用在js中使用,作用就和我们熟悉的JSON.stringify()一样。用法超级简单:
{{ jsonTest | json}}
三、angular自定义过滤器
方法:
app.filter('name', function() {
return function(input, char) {
return 自定义你的过滤器
}
}
app.filter('capitalize', function() {
//input 需要过滤的元素
//char位置,索引减一
return function(input, char) {
if(isNaN(input)) {
//如果序号位置没有设置,索引位置默认是0
var char = char - 1 || 0;
//把过滤元素索引位置上的字母转换成大写
var letter = input.charAt(char).toUpperCase();
var out = [];
for(var i = 0; i < input.length; i++) {
if(i == char) {
out.push(letter);
} else {
out.push(input[i]);
}
}
return out.join('');
} else {
return input;
}
}
});
第219天:Angular---过滤器的更多相关文章
- Angular过滤器
angular中的过滤器有: currency 过滤货币 number 过滤数字, date 过滤日期 json 把js对象过滤为json字符串 limitTo 截取字符串,参数是正数则从左往右 ...
- Angular过滤器 自定义及使用方法
首先设置自定义过滤器. 定义模块名:angular .module('myApp') .filter('filterName',function(){ return function(要过滤的对象,参 ...
- angular过滤器基本用法
1.过滤器主要用于数据的筛选,可以直接在模板使用 语法: {{expression | filter}} {{expression | filter | filter2}} {{expression ...
- Angular 过滤器的简单使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- angular过滤器使用 自定义过滤器
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script sr ...
- 如何angular过滤器进行排序???
首先定义一个json文件: 然后写HTML文件: <div id="box"> <!--第一个下拉框--> <select ng-model=&quo ...
- angular 过滤器(日期转换,时间转换,数据转换等)
(function() { 'use strict'; /** * myApp Module * * Description */ angular.module('myApp') .filter('i ...
- Angular 过滤器
<!DOCTYPE html><html ng-app="myApp"><head lang="en"> <meta ...
- 简话Angular 04 Angular过滤器详解
一句话: filter是万能的数据处理器,可以过滤数据,排序数据,删除数据,扩展数据 1. 内置filter大全 url: https://docs.angularjs.org/api/ng/filt ...
- angular过滤器在html和js中的使用
在HTML中使用格式为:{{数据 | 过滤器名称:条件一:条件二--}}:过滤条件间使用:隔开 例如: 在代码中一般格式为: 变量 = $filter("过滤器名称")(被过滤数 ...
随机推荐
- 封装的一套简单轻量级JS 类库(RapidDevelopmentFramework.JS)
1.最近好久没有更新自己的博客了,一直在考虑自己应该写一些什么.4.2日从苏州回到南京的路上感觉自己的内心些崩溃和失落,我就不多说了? 猛然之间我认为自己需要找一下内心的平衡.决定开发属于自己一套快速 ...
- mybatis学习(一)-------XML 映射配置文件详解
XML 映射配置文件 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置(settings)和属性(properties)信息.文档的顶层结构如下: configuration 配 ...
- 2018年美国大学生数学建模竞赛(MCM/ICM) E题解题思路
任务一就是让大家去做个基本的评价,是典型的评价类问题,所以应该按照 指标+方法的步骤去做,首先就是寻找国家脆弱性的相关概念,然后选择影响国 家脆弱性的指标,如气候变化,经济发展,政治状况等等,再就是构 ...
- c#多线程中Lock()关键字的用法小结
本篇文章主要是对c#多线程中Lock()关键字的用法进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助 本文介绍C# lock关键字,C#提供了一个关键字lock,它可以把一段 ...
- 【Unity Shader】(五) ------ 透明效果之半透明效果的实现及原理
笔者使用的是 Unity 2018.2.0f2 + VS2017,建议读者使用与 Unity 2018 相近的版本,避免一些因为版本不一致而出现的问题 [Unity Shader学习笔记](三) -- ...
- Kubernetes服务发现之Service详解
一.引子 Kubernetes Pod 是有生命周期的,它们可以被创建,也可以被销毁,然后一旦被销毁生命就永远结束.通过ReplicationController 能够动态地创建和销毁Pod(列如,需 ...
- 新特性:postgresql的vacuum漫谈
文章出处:来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31556440/viewspace-2375109/ 前言 即便是从数据库特性,SQL功能性等方面,Pos ...
- java并发编程原理
一.java内存模型 Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样底层细节.此处的变量与Java编程时所说的变量不一样,指包括了实例字段 ...
- 使用python实现用微信远程控制电脑
首先,我们要先看看微信远程控制电脑的原理是什么呢? 我们可以利用Python的标准库控制本机电脑,然后要实现远程的话,我们可以把电子邮件作为远程控制的渠道,我们用Python自动登录邮箱检测邮件,当我 ...
- 详细教你实现BST(二叉排序树)
查找基本分类如下: 线性表的查找 顺序查找 折半查找 分块查找 树表的查找 二叉排序树 平衡二叉树 B树 B+树 散列表的查找 今天介绍二叉排序树. 二叉排序树 ( Binary Sort Tree ...