首页  >  文章  >  web前端  >  AngularJS自定义服务与fliter的混合使用

AngularJS自定义服务与fliter的混合使用

高洛峰
高洛峰原创
2016-12-05 14:09:211092浏览

angular中,Filter是用来格式化数据用的,比如项目中,有很多时候从后台拿来的数据直接显示用书是不明白其含义的,这时候我们需要自己格式化一下后再显示在界面上,传统的j我们需要些一长串代码,各种影射,而angular给我们提供的filter,确实要简介很多。

下面给大家介绍下angularJS自定义服务与fliter的混合使用,一起看看吧。

 1. 创建自定义服务"$swl"

var app = angular.module('myApp', []);
app.service("$swl", function() {
this.after = function(data) {
return "("+data + " after,$swl";
};
this.before = function(data) {
return "($swl,before " + data+")";
}
})

   

2. 通过controller调用自定义服务

html代码

<div ng-app="myApp" ng-controller="myCtrl">
{{name }}
</div>

   

controller代码

app.controller("myCtrl", function($scope, $swl,$timeout) {
$scope.name = $swl.before("swl");
$timeout(function(){
$scope.name = $swl.after("swl");
},2000)
})

   

3. 与fliter的混合使用

html代码

<div ng-app="myApp" ng-controller="myCtrl">
{{name | before}}
</div>

   

fliter代码

app.filter("before",["$swl",function($swl){
return function(data){
return $swl.before("(filter,"+data+")");
}
}])

   


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn