AngularJs中组件、过滤器、自定义过滤器的使用

关于组件化:
    将页面中可以重复使用的标签封装成一个组件,方便这一部分UI重复使用
    类似于JS中的函数,封装了一部分处理代码,通过函数调用就可以重复使用这些代码
封装一个简单的组件代码如下:
[html] view plain copy
  1. <script>  
  2.     var app = angular.module("myApp", []);  
  3.   
  4.     app.component("myComp", {  
  5.         template:"<h1>组件化封装的内容<small>这是一个副标题small>h1>"  
  6.     });  
  7. script>  
调用方式:
[html] view plain copy
  1. <my-comp>my-comp>  
过滤器: 过滤器可以使用一个管道字符(|)添加到表达式和指令中。 (1)字符串大小写转换过滤器 代码如下:
[html] view plain copy
  1. <div ng-bind="name">div>  
  2.         <div ng-bind="name | uppercase">div>  
  3.         <div ng-bind="name | lowercase">div>  
(2)长度限制过滤器
      代码如下:
[html] view plain copy
  1. 长度:<input type="text" ng-model="length"><br />  
  2. 位置:<input type="text" ng-model="index">  
  3. <br />  
  4. <ul>  
  5.     <li ng-repeat="u in users | limitTo:length:index">  
  6.         <span ng-bind="u.userID">span>****  
  7.         <span ng-bind="u.username">span>****  
  8.         <span ng-bind="u.nickname">span>  
  9.     li>  
  10. ul>  
(3)JSON过滤器 代码如下:
[html] view plain copy
  1. <span ng-bind="users|json">span>  
(4)日期时间过滤器
[html] view plain copy
  1. <span ng-bind="date | date:'yyyy年MM月dd日 hh:mm:ss'">span><br />  
  2.             <span ng-bind="date | date:'yyyy年MM月dd日'">span><br />  
  3.             <span ng-bind="date | date:'hh:mm:ss'">span><br />  
(5)货币格式过滤器
[html] view plain copy
  1. 货币过滤器输出:<span ng-bind="price | currency">span><br />  
  2. 货币过滤器输出:<span ng-bind="price | currency:'人民币¥'">span><br />  
  3. 货币过滤器输出:<span ng-bind="price | currency:'¥':3">span><br />  
自定义过滤器:
 app.filter(name, fn):用于定义一个自定义过滤器
 name:过滤器名称
 fn:过滤器处理函数
 过滤器中,直接return function(value) {}
 通过闭包函数来实现数据处理,固定语法结构!
 value参数:第一个参数,用于接收要处理的数据:数据就是过滤器管道符前面变量中的数据
[html] view plain copy
  1. <div ng-controller="myCtrl">  
  2.     <div ng-bind="name">div>  
  3.     <div ng-bind="name | myfilter">div>  
  4. div>  
[html] view plain copy
  1. var app = angular.module("myApp", []);  
  2.     app.filter("myfilter", function() {  
  3.         return function(value) {  
  4.             value = value.toUpperCase();  
  5.             return value;  
  6.         }  
  7.     });  
[html] view plain copy
  1. app.controller("myCtrl", function($scope) {  
  2.         $scope.name = "jerry";  
  3.     });  
标注:过滤器中的数据处理完成,一定要返回输出(return value)。否则页面上不会输出相关的信息。

你可能感兴趣的:(AnjularJS)