Rumah  >  Artikel  >  hujung hadapan web  >  AngularJS自定义服务与fliter的混合使用

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

高洛峰
高洛峰asal
2016-12-05 14:09:211061semak imbas

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

   


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn