ng 自定义过滤器的创建和使用

过滤器的本质就是一个方法,参数就是输入的值以及给过滤器指定的参数,返回值就是处理后要显示的值。

①过滤器创建
var app = angular.module();
app.filter(‘名称’,func)//创建过滤器
在filter的第二参数,是一个方法,返回的是过滤器方法(有返回值)
app.filter(‘customFilter‘, function () {
return function (value,arg1) {
console.log(value,arg1);
return ‘$‘+value;
}
});
②调用过滤器(与自带过滤器用法一致)
{{ price | customFilter }}

效果:

代码:

<!DOCTYPE html>
<html ng-app="myApp">
<head lang="en">
  <meta charset="UTF-8">
  <script src="js/angular.js"></script>
  <title></title>
</head>
<body>
<div ng-controller="myCtrl">
  <p>{{price}}</p>
  <p>{{price | customFilter:‘¥‘}}</p>
</div>
<script>
  var app = angular.module(‘myApp‘, [‘ng‘]);

  //创建过滤器(过滤器的本质就是方法)
  app.filter(‘customFilter‘, function () {
    return function (value,arg1) {
      console.log(value,arg1);
      return ‘$‘+value;
    }
  });

  app.controller(‘myCtrl‘, function ($scope) {
    console.log(‘myCtrl  func is called‘);
    $scope.price = 100;
  })
</script>
</body>
</html>

2.自定义大写转换的过滤器

①创建过滤器
给过滤器定义方法
toUppercase()
②调用

效果:

代码:

<!DOCTYPE html>
<html ng-app="myApp">
<head lang="en">
  <meta charset="UTF-8">
  <script src="js/angular.js"></script>
  <title></title>
</head>
<body>
<div ng-controller="myCtrl">
  <h1>{{name | myUppercase}}</h1>
</div>
<script>
  var app = angular.module(‘myApp‘, [‘ng‘]);

  //创建自定义的过滤器
  app.filter(‘myUppercase‘, function () {
    return function (value) {
      //实现对输入的处理
      //返回,显示出来
      return value.toUpperCase();
    }
  });

  app.controller(‘myCtrl‘, function ($scope) {
    $scope.name = "Jack";
  })
</script>
</body>
</html>
时间: 2024-12-14 19:35:34

ng 自定义过滤器的创建和使用的相关文章

vue自定义过滤器的创建和使用

过滤器:生活中有很多例子,净水器 空气净化器 .过滤器的作用:实现数据的筛选.过滤.格式化. vue1.*版本是有内置的过滤器,但是在vue2.*所有的版本都已经没有自带的过滤器了. 1.过滤器创建 过滤器的本质 是一个有参数 有返回值的方法 new Vue({ filters:{ myCurrency:function(myInput){ return 处理后的数据 } } }) 2.过滤器使用语法: <any>{{表达式 | 过滤器}}</any>举个例子: <h1>

django之创建第6-1个项目-自定义过滤器

1.在站点blog目录下创建templatetags文件夹 2.templatetags目录下需要作为一个包来处理和调用其中的内容,需要有一个__init__.py文件 3.在templatetags目录下创建percent.py文件(里面定义过滤器) 4.编写percent.py文件,定义过滤器 # -*- coding: UTF-8 -*- #自定义过滤器,注意这里编码一定不要掉了,不然会报错啊~~~~ from django import template register = templ

创建 AngularJS 自定义过滤器,带自定义参数

Angularjs过滤器是 angularjs非常棒的特性之一.有朝一日,你可能需要使用自定义过滤器,幸运的是,你找到了这篇博文. 下面显示的是自定义过滤器长什么样子(请注意myfilter): <tr ng-repeat="friend in friends |myfilter:'param1':'param2':true:'windowScopedFilter'"> 我们的自定义过滤器叫做 "myfilter", 它有由 ':'隔开的4个参数. 这是

Django中自定义过滤器的使用

我在这里做的是: 从数据库查出id递增的一些信息,展示在前台. 编写一个过滤器判断查出数据的id是偶数的返回True 奇数返回False 1 创建项目,创建应用,注册应用,配置settings.py文件,配置urls映射,编写views试图,编写模板templates,编写models模块 切记 注册应用.  很多伙伴找不到自己定义的过滤器,是因为忘记注册应用! 2 创建过滤器的目录: 实际上,在项目目录或者应用目录下创建都是可以的,创建一个名为templatetags的python模块 在我这

angularJS自定义过滤器、服务和指令

自定义过滤器 1 mainApp.filter('mayfilter',function(){ 2 return function(input){ 3 (过滤逻辑代码) 4 } 5 });   自定义创建指令 1 mainApp.derectiv("derectiveName",function(){ 2 return { 3 restrict:"E", //定义类型:E(元素),C(class),A(属性),M(注释) 4 template:"<p

AngularJs(八) 过滤器filter创建

大纲 示例 过滤器的使用 创建过滤器 demo 这是整个示例demo 1.filter.js文件 angular.module("exampleApp", []) .constant("productsUrl", "http://localhost:27017/products") .controller("defaultCtrl", function ($scope, $http, productsUrl) { $http.

Django 自定义过滤器和模板标签

前提:自定义模板标签和过滤器必须位于Django的某个应用中,这个应用可以包含一个templatetags目录, 和models.py views.py 处于同一级目录.若这个templatetags目录不存在则创建他,同时在该目录下建立一个py文件:__init__.py 文件,使得该目录可以作为Python包.在添加这个模块后,需要重启服务器以便使用.注意命名不要冲突.eg: polls/ __init__.py models.py templatetags/ 在模板中可以这样用:{% lo

django自定义过滤器及模板标签

创建一个模板库 不管是写自定义标签还是过滤器,第一件要做的事是创建模板库(Django能够导入的基本结构). 创建一个模板库分两步走: 第一,决定模板库应该放在哪个Django应用下. 如果你通过 manage.py startapp 创建了一个应用,你可以把它放在那里,或者你可以为模板库单独创建一个应用. 我们更推荐使用后者,因为你的filter可能在后来的工程中有用. 无论你采用何种方式,请确保把你的应用添加到 INSTALLED_APPS 中. 我们稍后会解释这一点. 第二,在适当的Dja

自定义模板语言之simple_tag和自定义过滤器

扩展你的模板系统 一般是扩展模板的tag和filter两个功能.可以用来创建你自己的tag和filter功能库. 创建模板库 分为两步: 1. 首先决定由模板库在哪一个注册的app下放置,你可以放在一个已有的app目录下,也可以新建一个专门管理模板库的app,比如python manage.py startapp myTemplateLibrary.推荐后者,因为可以方便将来的重用. 2. 在app目录下创建templatetags子目录,并在里面创建两个文件,__init__.py,用来声明这