全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解AngularJS中$filter过滤器使用(自定义过滤器)

1.内置过滤器

* $filter 过滤器,是angularJs中用来处理数据以更好的方式展示给我用户。比如格式化日期,转换大小写等等。
* 过滤器即有内置过滤器也支持自定义过滤器。内置过滤器很多,可以百度。关键是如何使用:
* 1.在HTML中直接使用内置过滤器
* 2.在js代码中使用内置过滤器
* 3.自定义过滤器
*
* (1)常用内置过滤器
*    number 数字过滤器,可以设置保留数字小数点后几位等
*    date  时间格式化过滤器,可自己设置时间格式
*    filter 过滤的数据一般是数组,数组中的数据可以是对象,字符串等
*    orderBy 排序根据数组中某一个元素的属性排序等
*    lowercase 转换小写
*    uppercase 转换大写
*    limitTo  字符串剪切 使用格式{{被剪切的字符串|limitTo:数值}} 数值绝对值代表要切得字符个数,正代表从头开始切,负值相反。
*
* */

2.自定义过滤器

/*
* 定义格式:
* 模块名称.filter(‘过滤器名字',function(){
*    return function(被过滤数据,条件1,条件2.。。。){
*    //过滤操作
*    }
* });
* */

    套用上面的格式定义两个简单的自定义过滤器一个带条件的,一个不带条件的。

(1)【不带条件】,功能:固定转换(有时候项目中会遇到角色代号,门店编码什么的,但是显示的时候要显示对应中文,比如字段code:101代表老板

    这时候像这种code值比较多,那就用过滤器比较好。)

myApp.filter("ChangeCode",function () {
  return function (inputData) {
    var changed = "";
    switch (inputData){
      case '101':changed = "老板";break;
      case '102':changed = "经理";break;
      case '103':changed = "员工";break;
    }
    return changed;
  }
});
/*完成,说一下使用场景(就这个过滤器的功能)和方式。
* 场景:服务器返回的数据中有个字段code,直接放标签里<div>{{data.code}}</div>,会显示code值而不是code值对应的职称,这时候就可以用这个专门
*    针对这个转换的自定义过滤器
* 使用方式:
*      (1)HTML中:<div>{{data.code | ChangeCode}}</div>//跟内置过滤器一样的方式
*      (2)js中:变量 = $filter("ChangeCode")(被过滤的code数据)//一样的调用方式
*      
* */

(2)【带条件】,功能过滤掉一组数组中某个字段值为某个值的数据,比如这里定义一个过滤掉所有年龄为某个值的过滤器。参数就是年龄

myApp.filter("deleteByAge",function () {
  return function (input,byAge,age) {
    var array = [];
    for(var i=0;i<input.length;i++){
      if(input[i][byAge]!=age){
        array.push(input[i]);
      }
    }
    return array;
  }
})
/*
* 处理一组数据的时候一般很少用在HTML当中,带条件的自定义过滤器是根据年龄值,也可以根据数组元素中的任意一个属性值进行删除过滤。
* 使用方式:变量 = $filter("deleteByAge")(数组,“属性名称”,属性值);
* */

【总结内置过滤器的使用方式】

 (1)在HTML中一般格式为:  {{被过滤的数据 | 过滤器名称:条件1:条件2.。。。}}    ;过滤条件之间用‘:'隔开.

 (2)在代码中一般格式为:  变量 = $filter("过滤器名称")(被过滤数据,过滤条件1,过滤条件2,。。。。。。)

【自定义过滤器】

 (1)定义格式:   

    model.filter(filterName,function(){
       return function(参数1,参数2,参数3.。。。。参数N){
         //过滤器处理部分
        }
      })

      model:模块名称

      filterName: 过滤器名称

      参数1:被过滤的数据

      参数2:一般为过滤条件,可以有多个,后面的参数3一直到参数N都是,根据需要添加。

以上所述是小编给大家介绍的详解AngularJS中$filter过滤器使用(自定义过滤器),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# angularjs  # filter使用  # filter过滤器的使用  # 详解AngularJS中自定义过滤器  # AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例  # AngularJS 自定义过滤器详解及实例代码  # AngularJS自定义过滤器用法经典实例总结  # Angularjs 依赖压缩及自定义过滤器写法  # angularJs自定义过滤器实现手机号信息隐藏的方法  # AngularJS实现的自定义过滤器简单示例  # 简述angular自定义过滤器在页面和控制器中的使用  # Angular.Js中过滤器filter与自定义过滤器filter实例详解  # 详解Angular的内置过滤器和自定义过滤器【推荐】  # angularjs自定义过滤器demo示例  # 自定义  # 组中  # 不带  # 小编  # 格式为  # 都是  # 这时候  # 过滤掉  # 给我  # 有个  # 那就  # 多个  # 在此  # 可以用  # 给大家  # 比较好  # 几位  # 用过  # 可以根据  # 比较多 


相关文章: 制作网站的过程怎么写,用凡科建站如何制作自己的网站?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  如何在阿里云服务器自主搭建网站?  如何选择高效响应式自助建站源码系统?  建站之星在线客服如何快速接入解答?  建站之星后台密码遗忘?如何快速找回?  建站主机服务器选型指南与性能优化方案解析  微信小程序制作网站有哪些,微信小程序需要做网站吗?  装修招标网站设计制作流程,装修招标流程?  Swift中循环语句中的转移语句 break 和 continue  贸易公司网站制作流程,出口贸易网站设计怎么做?  如何通过二级域名建站提升品牌影响力?  网页设计网站制作软件,microsoft office哪个可以创建网页?  如何通过PHP快速构建高效问答网站功能?  建站之星后台管理如何实现高效配置?  微信小程序 input输入框控件详解及实例(多种示例)  建站之星北京办公室:智能建站系统与小程序生成方案解析  如何快速搭建高效香港服务器网站?  建站之星后台管理:高效配置与模板优化提升用户体验  怀化网站制作公司,怀化新生儿上户网上办理流程?  西安专业网站制作公司有哪些,陕西省建行官方网站?  如何快速上传自定义模板至建站之星?  魔方云NAT建站如何实现端口转发?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  教程网站设计制作软件,怎么创建自己的一个网站?  如何在景安服务器上快速搭建个人网站?  如何用搬瓦工VPS快速搭建个人网站?  如何快速辨别茅台真假?关键步骤解析  已有域名建站全流程解析:网站搭建步骤与建站工具选择  建站之星备案流程有哪些注意事项?  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  网站制作多少钱一个,建一个论坛网站大约需要多少钱?  如何通过远程VPS快速搭建个人网站?  图册素材网站设计制作软件,图册的导出方式有几种?  如何在服务器上配置二级域名建站?  建站之星在线版空间:自助建站+智能模板一键生成方案  招商网站制作流程,网站招商广告语?  如何在景安云服务器上绑定域名并配置虚拟主机?  网站设计制作公司地址,网站建设比较好的公司都有哪些?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  如何通过山东自助建站平台快速注册域名?  建站主机空间推荐 高性价比配置与快速部署方案解析  如何制作一个表白网站视频,关于勇敢表白的小标题?  如何在服务器上三步完成建站并提升流量?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  建站之星伪静态规则如何正确配置?  实例解析Array和String方法  制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?  潍坊网站制作公司有哪些,潍坊哪家招聘网站好?  如何在阿里云香港服务器快速搭建网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。