AngularJS Filter(过滤器)用法

一、在视图模板(View Template)中使用

在表达式中应用Filters (过滤器)

需要遵循格式如下:

{{ expression | filter }}        即         {{ 表达式 | 过滤器 }}

例如:{{ 12 | currency }}     输出为    $12.00

在输出结果中应用Filters (过滤器)

通俗点讲就是Filter的叠加--前一filter的输出结果作为后一filter的输入数据源.

需要遵循格式如下:

{{ expression | filter1 | filter2 | ... }}  即 表达式(expression)使用filter1过滤后再使用filter2过滤...

带参数的Filter

Filter后面可以跟一个或多个参数,用来帮助实现特殊要求、需求的filter.

需要遵循格式如下:

{{ expression | filter:argument1:argument2:... }}

示例:  {{ 1234 | number:2 }}   = 1,234.00

二、使用 AngluarJS 内置Filter

  • AngularJS为我们提供了9个内建的过滤器

    分别是currency, date, filter, json, limitTo, uppercase, lowercase, number, orderBy。

    具体的用法在AngularJS的文档中都有详细说明。下面只说几个常用的。

  • currency filter(货币过滤器)

    currency – 用来将变量转换成货币表现形式

    如:{{ amount | currency}}

  • uppercase/lowercase filter(字母大小写filter)

    如:

    {{ "lower cap string" | uppercase }}

    <input ng-model="userInput"> Uppercased: {{ userInput | uppercase }}

  • date filter (日期filter)
    • 如:

      {{ 1304375948024 | date }}

      {{ 1304375948024 | date:"MM/dd/yyyy @ h:mma" }}

    • json filter

      如:

      {{ {foo: "bar", baz: 23} | json }}

       

    • 在controllers, services和drictives中使用filter

      1. 可以在AngularJS的controller, service或者driective中使用filter, 这时候你需要将依赖的filter名字加入到controller, service或者directive的依赖中去。
      2. 2

        在controller中直接使用filter, 这样controller可以根据自身需要而适时调用filter

        三、自定义filter(过滤器)

        1. 1

          AngularJS编写自定义过滤器的形式和AngularJS的factory service非常相像,一定记得它返回一个对象或者是一个函数即可,编写的时候,只需要一个带有一个以上参数的函数即可。

        2. 2

          格式大致如:

          app.filter(‘filter(过滤器)名称‘,function(){

          return function(需要过滤的对象,过滤器参数1,过滤器参数2,...){

          //...执行业务逻辑代码

          return 处理后的对象;

          }

          });

时间: 2024-11-08 19:12:11

AngularJS Filter(过滤器)用法的相关文章

AngularJS学习--- 过滤器(filter),格式化要显示的数据 step 9

1.切换目录,启动项目 git checkout step-9 npm start 2.需求: 格式化要显示的数据. 比如要将true-->yes,false-->no,这样相互替换. 3.效果: 4.代码实现: 这里主要是使用filter过滤器来进行数据过滤,这里只是在前端进行数据过滤,原始数据是不发生变化的. $filter:Filters are used for formatting data displayed to the user,格式化要显示的数据. 用法: {{ expres

AngularJs(八) 过滤器filter创建

大纲 示例 过滤器的使用 创建过滤器 demo 这是整个示例demo 1.filter.js文件 angular.module("exampleApp", []) .constant("productsUrl", "http://localhost:27017/products") .controller("defaultCtrl", function ($scope, $http, productsUrl) { $http.

angularJS的过滤器!

angularJS过滤器: filter currency date filter json limitTo lowercase number orderBy uppercase ...... Filter过滤器: 过滤器的主要用途就是一个格式化 / 筛选数据的小工具: 一般用于服务端存储的数据转换为用户界面可以理解的数据: 常见需要使用Filter的数据有: - 时间 1288323623006 currency:它是用来过滤货币: 作用把数字过滤成 一个货币: 使用:竖杠+过滤器名称 <di

AngularJs Filter

Filter 公司一直比较忙.. 很忧伤. 终于有点儿闲暇继续看会书 写会笔记. Filter 顾名思义 就是过滤器. 比如 排序,筛选,格式化等等. 有三种方法. 后台 JavaScript 原生 {{ data | fitler }} 如果用 angularjs 大概就这三种. 区别 后台 单次传输多,多次传输就很不划算,每次都请求. 前台. 一次传输的数据较多. JavaScript 或者 {{}} 无非是 Controller 是否重用的问题. 格式 {{ dataSource | fi

AngularJS开发指南13:AngularJS的过滤器详解

AngularJS过滤器是用来格式化输出数据的.除了格式化数据,过滤器还能修改DOM.这使得过滤器通常用来做些如“适时的给输出加入CSS样式”等工作. 比如,你可能有些数据在输出之前需要根据进行本地化.你可以向下面这样使用链式的过滤器来传递表达式: name | uppercase 这个表达式执行时会将name的值传递给uppercase过滤器. 写一个你自己的过滤器非常容易:在你的模块中注册一个新的过滤器(可注入的)工厂函数就行了.这个工厂函数必须返回一个新的过滤器函数,这个过滤函数的第一个参

ansible filter_plugins插件实现jinja2自定义filter过滤器

前言: filter_plugins是什么? 这个单词拆解下,filter !  熟悉jinja2模板的人,到知道他是过滤器,可以在模板中以管道的方式用pyhton的代码处理字符串. ansible模板调用的是jinja2,这个大家都知道 . 这个filter_plugins插件代码,就是为了更好的处理jinja2模板中的字符串和逻辑判断的. 先前,我和沈灿讨论一个模板的问题,实在蛋疼的要命,总是达不到我们要的数据,当时是做一个数据的统计和rabbitmq的配置,有些地方用jinja2模板自身的

springboot中filter的用法

一.在spring的应用中我们存在两种过滤的用法,一种是拦截器.另外一种当然是过滤器.我们这里介绍过滤器在springboot的用法,在springmvc中的用法基本上一样,只是配置上面有点区别. 二.filter功能,它使用户可以改变一个 request和修改一个response. Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在离开 servlet时处理response.换种说法,filter

AngularJS之过滤器

AnularJS的过滤器用来格式化需要展示给用户的数据,有很多实用的内置过滤器,也可以自己编写. 在HTML中的模板绑定符号{{ }}内通过|符号来调用过滤器.例如,假设我们希望将字符串转换成大写,可以对字符串中的每个字符都单独进行转换操作,也可以使用过滤器: {{ name | uppercase }} 在JavaScript代码中可以通过$filter来调用过滤器.例如,在JavaScript代码中使用lowercase过滤器: app.controller('DemoController'

angularJS -- RXJS 的用法

JS -- 获取异步数据的方式: 1. 回调函数 2. Promise 3. 事件订阅 4. RxJS -- V6.0 + 1. 回调函数方式获取异步数据 延时器模拟异步数据: getCallData(cb) { setTimeout(() => { var userName = "ABC" cb && cb(userName) }, 1000); } 调用: /* 回调函数获取异步数据 */ this.request.getCallData((data: any