自定义过滤器
- AngularJS内建过滤器, 还可以根据业务需要自定义过滤器
- 通过模块对象实例提供的filter方法定义过滤器
- 自定义过滤器
- 参数一: 过滤器名称
- 参数二: 回调函数
- 返回为一个函数(input 为自动传入的数据, input为管道符前面的内容)
app.filter( 过滤器名称 , function () {
return function (input, args) {
return args + input;
}
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body ng-app="app" ng-controller="xmgController">
<!--<p>{{price | skCur}}</p>-->
<!--<p>{{price | skCur:'¥'}}</p>-->
<p>{{price | skCur:'@@'}}</p>
<!--首字母大写-->
<!--<p>{{str | uppercase}}</p>-->
<p>{{str | firstUppercase}}</p>
</body>
<script src="js/angular.js"></script>
<script>
//1.创建模块
var app = angular.module('app', []);
//2.创建控制器
app.controller('xmgController', ['$scope', function ($scope) {
$scope.price = 55;
$scope.str = 'gdmm';
}]);
//3.绑定模块 ng-app="app"
//4.绑定控制器 ng-controller="xmgController"
//自定义指令
app.directive('div', function () {
});
//自定义过滤器
//参数一: 过滤器名称
//参数二: 回调函数
//返回为一个函数(input 为自动传入的数据, input为管道符前面的内容)
app.filter('skCur', function () {
return function (input, args) {
//console.log(input);
//return 40;
//return '$' + input;
return args + input
}
});
//首字母大写过滤器
app.filter('firstUppercase', function () {
return function (input, args) {//input 自动传入管道符前面的内容
//console.log(input[0]);
//console.log(input[0].toUpperCase());
// slice()从指定位置,截取到末尾
return input[0].toUpperCase() + input.slice(1);
}
});
</script>
</html>