AngularJS的filter(过滤器)是用来过滤变量的值,或者格式化输出,得到自己所期望的结果或格式。
过滤器可以使用一个管道字符(|)添加到表达式和指令中。
例如:<p>姓名为 {{ lastName | uppercase }}</p> //将字符串格式化为大写
一.模板中使用过滤器
在表达式中应用Filters (过滤器)
需要遵循格式如下:
{{ expression | filter }} 即 {{ 表达式 | 过滤器 }}
例如:{{ 12 | currency }} 输出为$12.00
{{expression | filter}}
{{12 | currency}} 输出 $12.00
在输出结果中应用Filters (过滤器)
通俗点讲就是Filter的叠加--前一filter的输出结果作为后一filter的输入数据源.
需要遵循格式如下:
{{ expression | filter1 | filter2 | ... }} 即 表达式(expression)使用filter1过滤后再使用filter2过滤...
{{expression | filter1 | filter2 | ..... }}
带参数的Filter
Filter后面可以跟一个或多个参数,用来帮助实现特殊要求、需求的filter.
需要遵循格式如下:
{{ expression | filter:argument1:argument2:... }}
示例:{{ 1234 | number:2 }} = 1,234.00
{{expression | filter:argument1:argument2:...}}
二.AngularJS内置filter
AngularJS为我们提供了9个内建的过滤器
分别是currency, date, filter, json, limitTo, uppercase, lowercase, number, orderBy。
具体的用法在AngularJS的文档中都有详细说明。下面只说几个常用的。
currency filter(货币过滤器)
currency – 用来将变量转换成货币表现形式
如:{{ amount | currency}}
<div>{{amount | currency}}<div>
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 }}
三.自定义filter
AngularJS编写自定义过滤器的形式和AngularJS的factory service非常相像,一定记得它返回一个对象或者是一个函数即可,编写的时候,只需要一个带有一个以上参数的函数即可。
格式大致如:
app.filter('filter(过滤器)名称',function(){ return function(需要过滤的对象,过滤器参数1,过滤器参数2,...){ //...执行业务逻辑代码 return 处理后的对象; } });
四.在controllers, services和drictives中使用filter
可以在AngularJS的controller, service或者driective中使用filter, 这时候你需要将依赖的filter名字加入到controller, service或者directive的依赖中去。
在controller中直接使用filter, 这样controller可以根据自身需要而适时调用filter
<div ng-controller="FilterController as ctrl"> <div> All entries: <span ng-repeat="entry in ctrl.array"> {{entry.name}} </span> </div> <div > Entries that contain an "a": <span ng-repeat="entry in ctrl.filterdArray">{{entry.name}}</span> </div> </div>
相关推荐
Angular.js 是一个强大的JavaScript框架,由Google维护,用于构建单页应用(Single Page Applications, SPA)。这个版本,v1.8.3,是Angular.js的一个稳定版本,它提供了丰富的功能和改进,帮助开发者构建高性能、可...
在前端开发领域,AngularJS(通常简称为Angular.js)是一个非常流行且强大的JavaScript框架,由Google维护。这个框架主要用于构建动态、单页Web应用程序(SPA),它提供了丰富的功能来简化前端开发过程,包括数据...
- **过滤器(Filters)**:过滤器用于格式化和转换数据,如日期格式化、货币转换等,可以在视图中直接使用或在控制器中应用。 - **路由(Routing)**:AngularJS的ngRoute模块提供了URL路由功能,可以实现单页面...
7. **过滤器**:过滤器用于转换数据,例如格式化日期、货币或者过滤数组。 在"angular.js-master.zip"中,我们可以预期找到以下内容: - **src**目录:包含了AngularJS框架的主要源代码,可能包括核心服务、指令、...
Angular.js的`date`过滤器可以用于格式化日期字符串,确保显示给用户的形式符合预期。同时,我们可能需要在控制器中添加一些逻辑来验证用户输入的有效性,例如检查所选日期是否超出范围。 在压缩包的文件中,“说明...
5. **过滤器**:过滤器用于格式化数据,如日期、货币等,可以方便地在视图中应用。 6. **模块化**:Angular.js应用被组织为模块,便于代码的管理和重用。 **Angular.js在Web开发中的应用** Angular.js广泛应用于...
此外,Angular.js还有过滤器、路由和动画等其他特性,这些特性进一步丰富了开发功能。 在传统页面刷新方式中,用户点击链接后,浏览器会加载整个网页,包括所有的HTML、JavaScript和CSS。这种方式不仅加载速度慢,...
- **过滤器**:用于数据格式化,如日期格式化、货币转换等。 - **模板**:HTML视图,结合Angular指令展示数据。 4. **最佳实践** - **模块划分**:根据功能划分模块,每个模块负责特定的业务逻辑。 - **测试...
- **过滤器**:用于格式化数据,如日期过滤、货币过滤、数组过滤等。 ### 10. 路由(Routing) - **AngularJS的uirouter或ngRoute模块**:实现页面路由管理,根据URL切换不同的视图。 ### 11. 测试与调试 - **...
1.6.9版本提供了多种内置过滤器,如`date`、`currency`等,也可以自定义过滤器以适应个性化需求。 8. **路由**:AngularJS的路由功能(ngRoute模块)使得单页面应用(SPA)能够根据URL导航到不同的视图。1.6.9版本...
它提供了数据绑定、指令、服务、过滤器等功能,极大地提高了开发效率。在这个项目中,Angular.js可能被用来处理前端的数据展示、用户交互和路由管理,实现前后端的通信。 项目的描述提到,它已经完成了部分功能,并...
4. **过滤器(Filters)**:类似MVC中的过滤器,用于全局或特定操作的方法拦截,如异常处理、身份验证等。 5. **实体框架(Entity Framework)**:如果项目中包含了数据库操作,可能使用了微软的ORM工具Entity ...
AngularJS的核心特性包括数据绑定、依赖注入、指令系统、过滤器等。在分页导航中,我们将主要利用数据绑定和指令来实现动态交互。 1. 数据绑定:AngularJS的数据双向绑定使得视图与模型之间的同步变得简单。在分页...
Angular.js,通常简称为Angular,是由Google维护的一个开源JavaScript框架,用于构建单页应用程序(SPA)。这个框架的主要目标是简化前端开发,通过提供强大的数据绑定和依赖注入机制,让开发者可以更加专注于应用...
2. **src** 目录:源代码文件夹,包含AngularJS指令的定义和其他辅助服务、工厂或过滤器等。 - `directive.js`:这里是核心的C3.js AngularJS指令实现,通常会定义一个名为`c3Chart`或类似的指令,使得可以在HTML...
在1.6.4版本中,开发者可以使用内置过滤器,也可以自定义过滤器,以满足特定的显示需求。 六、服务 AngularJS的服务提供了一种共享状态和行为的方式,它们是单例对象,可以在应用程序的不同组件之间通信。1.6.4版本...
6. **过滤器**:过滤器用于转换数据,如日期格式化、货币格式化等,可以在视图中或在表达式中使用。 7. **路由**:AngularJS的uirouter或ngRoute模块提供了路由功能,可以根据URL来加载不同的视图,实现单页应用...
3. 过滤器(Filters):过滤器用于格式化数据,例如日期格式化、货币转换等,它们可以轻松地嵌入到表达式或指令中。 4. 路由(Routing):AngularJS的ngRoute模块提供了路由功能,使得单页面应用能够根据URL导航到...
Sublime Text 2/3 的 Angular.js EE 片段 Angular.js EE: [mock-pass-backend] Angular.js EE:[模拟数据] Angular.js EE:[模拟后端] Angular.js EE:[模拟网址] Angular ... Angular.js:[运行] Angular.js: [过滤器
Angular.js 是一款强大的前端JavaScript框架,由Google维护,主要用于构建单页应用(SPA)。Angular.js 1.4.0是该框架的一个稳定版本,它提供了丰富的特性,帮助开发者构建可扩展、可维护的Web应用程序。以下是对...