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