当前位置:Gxlcms > JavaScript > AngularJS自定义服务与fliter的混合使用

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

时间:2021-07-01 10:21:17 帮助过:3人阅读

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+")");
}
}])

人气教程排行