angularjs——service

来源:互联网 发布:qt4.8 json封装和解析 编辑:程序博客网 时间:2024/05/29 19:29

1.$anchorScroll 监听$location.hash("IdName");调用$anchorScroll()函数就会滚动到IdName所在的位置

2.$animate:增强动画

方法

enter(element,parent,after,[done]);

在DOM中,将一个元素插入到元素后面或作为第一个子元素插入父元素。一旦完成,done()将会被回调(如果done()存在)。

element:被插入到DOM的元素。

parent:将会被插入子元素的父元素。(如果下一个元素不存在)。

after:后面插入元素的兄弟元素。

done:当元素被插入DOM后执行的回调函数。

leave(element,[done]);

从DOM中移除元素。一旦完成,done()将会被调用(如果done()存在)。

element:将会被从DOM中移除的元素。

done:当元素被从DOM删除后执行的回调函数。

move(element,parent,after,[done]);

将提供的元素在DOM中移动位置,在父元素的内部或者兄弟元素之间。一旦完成,该done()将会被回调(如果done()存在)

element:在DOM中被移动的元素。

parent:将会被插入子元素的父元素。(如果下一个元素不存在)。

after:后面被放置元素的兄弟元素。

done:当元素在DOM中被移动后执行的回调函数。

addClass(element,className,[done]);

给提供的元素添加提供的CSS类名。一旦完成,done()将会被调用(如果done()存在)。

element:将会被添加class名称的元素。

className:将会被提供的css类。

done:当css类被添加到元素中后执行的回调函数。

removeClass(element,className,[done]);

给提供的元素移除提供的CSS类名。一旦完成,done()将会被调用(如果done()存在)。

element:将会被移除class名称的元素。

className:将会被移除的css类。

done:当css类被从元素中移除后执行的回调函数。

setClass(element,add,remove,[done]);

在元素中添加或者移除给定的css类名。一旦完成,done()将会被调用(如果done()存在)。

element:被设置CSS类的元素。

add:将会被添加到元素的CSS类。

remove:将会从元素上移除的CSS类。

done:当元素中的css类被设置后执行的回调函数

3.$cacheFactory:用于生成一个用来存储缓存对象的服务,并且提供对对象的访问。

(1)put(key,value);

         在缓存对象中插入一个键值对(key,value)。

(2)get(key);

         在缓存对象中通过指定key获取对应的值。

(3)romove(key);

        在缓存对象中通过指定key删除对应的值。

(4)removeAll();

        删除缓存对象中所有的键值对。

(5)destroy();

         销毁这个缓存对象。

(6)info();

       获取缓存对象信息(id,size)。

注意:key:string类型,缓存对象中的值名称。

           value:所有类型,缓存对象中的值。

4.$compile:$compile() 可以将普通的结构编译成angular认识的结构。 比如你的DOM片段里面写的ng-xx 或者 angular的 {{ value }}等等。你如果不进行编译,这些DOM节点直接插入DOM树中,Angular是无法识别的。后面的()中一般我在使用时传入的是需要给编译这段代码作用的SCOPE对象。一般我会从当前作用域 $new()一个出来
var myScope = scope.$new();    myScope.showThis = true;var temp = $compile('<div ng-show="showThis">TEXT</div>')(myScope);    temp.appendTo('body');
5.$controller
6.$document
7.$exceptionHandler
8.$filter:ng内置了一些过滤器,它们是:currency(货币)、date(日期)、filter(子串匹配)、json(格式化json对象)、limitTo(限制个数)、lowercase(小写)、uppercase(大写)、number(数字)、orderBy(排序)除此之外还可以自定义过滤器
自定义filter:
app.filter('odditems',function(){    return function(inputArray){        var array = [];        for(var i=0;i<inputArray.length;i++){            if(i%2!==0){                array.push(inputArray[i]);            }        }        return array;    }});
内置九大filter:
1.我们可以直接在{{}}中使用filter
{{ expression | filter }}
2.也可以多个filter连用,上一个filter的输出将作为下一个filter的输入
{{ expression | filter1 | filter2 | ... }}
3.filter可以接收参数,参数用 : 进行分割
{{ expression | filter:argument1:argument2:... }}

4.除了对{{}}中的数据进行格式化,我们还可以在指令中使用filter,例如先对数组array进行过滤处理,然后再循环输出:

<span ng-repeat="a in array | filter ">
5.controller中使用
app.controller('testC',function($scope,$filter){    $scope.num = $filter('currency')(123534);  $scope.date = $filter('date')(new Date());  }
6.{{num | currency : '¥'}}使用currency可以将数字格式化为货币,默认是美元符号,你可以自己传入所需的符号
7.{{date | date : 'yyyy-MM-dd hh:mm:ss EEEE'}}原生的js对日期的格式化能力有限,
ng提供的date过滤器基本可以满足一般的格式化要求
8.json过滤器可以把一个js对象格式化为json字符串,没有参数{{ jsonTest | json}}
9.{{ childrenArray | limitTo : 2 }}limitTo过滤器用来截取数组或字符串,接收一个参数用来指定截取的长度
10.number过滤器可以为一个数字加上千位分割,像这样,123,456,789。同时接收一个参数,
可以指定小float类型保留几位小数:{{ num | number : 2 }}
9.$http:$http 是 AngularJS 应用中最常用的服务。服务向服务器发送请求,应用响应服务器传送过来的数据。
 $http.get("http://xxx")    .success(function(response) {$scope.names = response.records;});
10.$httpbackend
11.$interpolate
12.$interval
13.$locale
14.$location:AngularJS 会一直监控应用,处理事件变化, AngularJS 使用 $location 服务比使用 window.location 对象更好。

内置方法:

        • absUrl( ):只读;根据在RFC 3986中指定的规则,返回url,带有所有的片段。
        • hash( ):读、写;当带有参数时,返回哈希碎片;当在带有参数的情况下,改变哈希碎片时,返回$location。
        • host( ):只读;返回url中的主机路径。
        • path( ):读、写;当没有任何参数时,返回当前url的路径;当带有参数时,改变路径,并返回$location。(返回的路径永远会带有/)
        • port( ):只读;返回当前路径的端口号。
        • protocol( ):只读;返回当前url的协议。
        • replace( ):如果被调用,就会用改变后的URL直接替换浏览器中的历史记录,而不是在历史记录中新建一条信息,这样可以阻止『后退』。
        • search( ):读、写;当不带参数调用的时候,以对象形式返回当前url的搜索部分。
        • url( ):读、写;当不带参数时,返回url;当带有参数时,返回$location。

内置事件:

        • $locationChangeStart:在URL改变前发生。这种改变可以通过调用事件的preventDefault方法为阻止。查看ng.$rootScope.Scope#$on获得更多的细节。成功时触发$locationChangeSuccess事件。
        • $locationChangeSuccess:当URL改变后发生。
15.$log
16.$parse:将一个AngularJS表达式转换成一个函数
17.$q
18.$rootElement
19.$rootScope:$rootScope是由angularJS加载模块的时候自动创建的,每个模块只会有1个rootScope。rootScope创建好会以服务的形式加入到 $injector中。也就是说通过 $injector.get("$ rootScope ");能够获取到某个模块的根作用域
20.$sce
21.$sceDelegate
22.$templateCache
23.$timeOut:定时器
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $timeout) {
    $scope.myHeader = "Hello World!";
    $timeout(function () {
         $scope.myHeader = 
"How are you today?";
     }, 
2000);
});
24.$window










原创粉丝点击