AngularJS过滤器filter用法总结

AngularJS过滤器filter用法总结

什么是AngularJS过滤器filter

AngularJS过滤器filter是AngularJS框架中一项非常重要的组成部分,用于对数据进行快速过滤和转换。它可以在视图层轻松地过滤、排序和格式化数据,而不用去改变controllers或services。

如何使用AngularJS过滤器filter

使用AngularJS过滤器filter,需要在你的HTML模板中临时添加过滤器管道符号( | ), 其中的管道符号将数据的源数据导向filter中进行处理。过滤器有一个非常好的特性,就是可以串联多个过滤器,使过滤器管道更加灵活。

下面是使用filter的基本模板:

{{expression | filter1 | filter2 | ... }}

AngularJS常见过滤器filter示例

  1. currency (货币格式过滤器)

将数字转为货币格式,根据设置不同的参数可进行数字舍入和符号更改。

<!DOCTYPE html>
<html>
<head>
    <title>currencyFilter</title>
    <script src="//cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
</head>
<body ng-app="myApp">
    <h1>currency filter</h1>
    <div ng-controller="currencyController">
        <p>{{ money | currency }}</p>  <!-- output: $123.46 -->
    </div>
    <script>
        var app = angular.module('myApp',[]);
        app.controller('currencyController',function($scope){
            $scope.money = 123.4567;
        });
    </script>
</body>
</html>
  1. filter (数组过滤器)

当我们需要从一个数组中筛选出符合条件的元素时,filter就是解决方案。只要按照数组中的每个元素,返回true或false的逻辑来定义这个过滤器即可。

<!DOCTYPE html>
<html>
<head>
    <title>filterFilter</title>
    <script src="//cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
</head>
<body ng-app="myApp">
    <h1>filter filter</h1>
    <div ng-controller="filterController">
        <ul>
            <li ng-repeat="fruit in fruits | filter:goodFruits">{{fruit}}</li> <!-- 筛选水果的好坏 -->
        </ul>
    </div>
    <script>
        var app = angular.module('myApp',[]);
        app.controller('filterController',function($scope){
            $scope.fruits = ['apple', 'banana', 'orange', 'kiwi', 'pear', 'peach'];
            $scope.goodFruits = function(fruit){
                return fruit === 'banana' || fruit === 'pear' || fruit === 'peach';
            };
        });
    </script>
</body>
</html>

注意:$scope.goodFruits函数返回值为true,则将筛选出来,否则不显示。

总结

AngularJS过滤器filter在AngularJS框架中使用非常广泛,它是对数据进行快速过滤和转换的好工具。本文介绍了AngularJS常用的货币格式过滤器和数组过滤器两种,供读者参考。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:AngularJS过滤器filter用法总结 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • jQuery UI按钮图标选项

    jQuery UI的按钮小部件提供了许多选项,可以自定义按钮的外观和行为。其中,icons选项用于指定按钮使用的图标。本文将详细介绍icons选项的语法和用法,并提供两个示例说明。 语法 以下是icons选项的基本语法: $(selector).button({ icons: { primary: "icon-primary-class"…

    jquery 2023年5月9日
    00
  • jQWidgets jqxDocking showAllCollapseButtons() 方法

    以下是关于“jQWidgets jqxDocking showAllCollapseButtons() 方法”的完整攻略,包含两个示例说明: 方法简介 showAllCollapseButtons() 是 jQWidgets jqxDocking 控件的方法,用于显示所有窗口的折叠按钮。该方法的语法如下: $("#jqxDocking")…

    jquery 2023年5月10日
    00
  • jQWidgets jqxFormattedInput selectLast()方法

    jQWidgets jqxFormattedInput selectLast()方法 jQWidgets是一个基于jQuery的UI组件库,提供了丰富的UI件和工具,包括表、图、历、菜单等。jqxFormattedInput是jQWidgets中的一个组件,可以用于输入和格式化数字、货、日期等。jqxFormattedInput提供了selectLast()…

    jquery 2023年5月9日
    00
  • jQWidgets jqxSlider showTickLabels属性

    jQWidgets 是一套基于 jQuery 的前端 UI 组件库。jqxSlider 是 jQWidgets 中的一个滑动条组件。showTickLabels 属性可以控制 jqxSlider 在滑动条中显示刻度的数值标签。下面是详细的攻略: showTickLabels 属性 showTickLabels 属性是 jqxSlider 组件的一个可选属性,…

    jquery 2023年5月11日
    00
  • jQuery unload()方法

    jQuery unload() 方法用于在页面卸载时执行指定的函数。以下是关于 jQuery unload() 方法的详细攻略,含两个示例,演示如何使用 jQuery unload() 方法: 语法 jQuery unload() 方法的语法如下: $(window).unload(function() { // 在页面卸载时执行的代码 }); 示例1 以下…

    jquery 2023年5月9日
    00
  • jQuery使用正则验证15/18身份证的方法示例

    当需要验证用户输入的身份证号码时,我们可以使用jQuery结合正则表达式来实现。下面是实现方法的完整攻略。 步骤一:准备正则表达式 首先,我们需要准备一个正则表达式来匹配身份证号码。身份证号码是一个18位的数字或17位数字加一位校验码,因此我们可以使用如下正则表达式: /^([1-9]\d{5})(19\d{2}|20[0-2]\d)(0[1-9]|1[0-…

    jquery 2023年5月28日
    00
  • jQWidgets jqxGrid autosavestate属性

    以下是关于“jQWidgets jqxGrid autosavestate属性”的完整攻略,包含两个示例说明: 简介 jqxGrid 控件的 autosavestate 属性用于自动保存表格的状态,包括列的顺、宽度和排序方式等。当用户重新加载页面时,jqx 控件会自动还原表格的状态。 完整攻略 下面是 jqxGrid 控件 autosavestate 属性的…

    jquery 2023年5月10日
    00
  • jQuery not()方法与实例

    以下是关于jQuery中not()方法的完整攻略: 什么是not()方法? not()方法是jQuery中的一个筛选方法,用于从匹配元素集合中删除指定的元素。 如何使用not()方法? 可以使用以下代码来使用not()方法: $(selector).not(filter) 其中,selector是要选择的元素的选择器,filter是要删除的元素的选择器。 示…

    jquery 2023年5月12日
    00
合作推广
合作推广
分享本页
返回顶部