第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("过滤器名称")(被过滤数 ...
随机推荐
- CSS3新增特性详解(二)
上篇博文主要介绍了CSS3新增特性中的静态特性,比如新的选择器.多背景图.阴影.渐变等.本文主要介绍CSS3中新增的动态特性,如过度.动画.变形等. transitian: -webkit-tran ...
- ubuntu18.04上的draftsight 2D的安装
1: 先安装draftsight 需要的支持库 sudo apt-get install libuuid1:i386 libice6:i386 libsm6:i386 libxt6:i386 liba ...
- 关于python中的tkinter模块
python2.7和python3.6中的tkinter是两个包,不会自动升级,假如在fedora28做开发的话, 错误:用import Tkinter /import tkinter /import ...
- 一个IT男的表白
致BCD6 CEC0 C3F4 转一轮肩胛骨 倒一杯铁观音 白驹过隙,倏忽两秋 远方有希望和梦想 有火车.微信美颜视频聊天和碧根果 有你的支持 如果身旁没有你 生活无趣失去动力 就像python失去类 ...
- python破解网吧收费系统,远控网吧电脑设备!
我今天呢 , 我就没事跟着朋友喝酒喝酒啊.喝了很多啊.晚上到旁边的酒店开了一个房间,到了酒店才十点! 感觉没啥事情干的,那就去网吧走走看把,看到是一个嘟嘟牛的,和上次是一样的.还是照常用MS170 ...
- jar包、war包
JavaSE程序可以打包成Jar包(J其实可以理解为Java了),而JavaWeb程序可以打包成war包(w其实可以理解为Web了).然后把war发布到Tomcat的webapps目录下,Tomcat ...
- Linux文件句柄数调整
首先介绍下Linux系统中"一切都是文件". 1. Linux系统文件句柄数概念 文件句柄(Windows) 文件描述符(Unix/Linux):file discriptor,f ...
- 安装配置heapster(包含influxdb,grafana)
前提:已搭建好kubernetes集群.安装完dashboard 默认安装的dashboard无法展示集群的度量指标信息,此时就需要安装heapster插件 Heapster 插件使用包含三部分内容: ...
- [文章存档]如何检测 Azure Web 应用沙盒环境文件系统存储量
链接:https://docs.azure.cn/zh-cn/articles/azure-operations-guide/app-service-web/aog-app-service-web-h ...
- 工具 | Sublime
Sublime 前言 妈耶..\(Sublime\)的界面真的是太好看啦哭哭.. 我永远喜欢Sublime! 强推Sublime... 正文 自从暑假用上的Ubontu 一开始用的是\(gedit\) ...