AngularJS基于factory创建自定义服务的方法详解

前端之家收集整理的这篇文章主要介绍了AngularJS基于factory创建自定义服务的方法详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了AngularJS基于factory创建自定义服务的方法分享给大家供大家参考,具体如下:

为什么要创建自定义服务?

很简单,不想让控制器显得过于“臃肿”,而且服务可复用。针对性强,每个服务对应不同的功能

这里介绍如何使用factory创建自定义服务,并且使用他。

例子1:

使用factroy来创建一个服务和创建一个控制器非常像,只是创建服务需要返回这个服务的对象。这里的对象就是NameFactory 。一般的写法是在函数的一开始就创建一个变量对象,而后在进行对象里面属性以及方法的设置,最后返回这个对象即可。

在控制器使用自定义的服务与使用AngularJS自带的服务几乎一样,只是名字的前面没有美元($)符号。在注入了自定义的服务后,控制器中就可以随意的使用该控制器返回的对象的属性方法了。

自定义服务还有个更强大的玩法,就是在创建自定义服务的同时将已经创建好的服务注入。以上一篇博文的基础为例,使用自定义服务来实现读取AJAX文件。(JSON文件可参考前面一篇《》,这里不给出了)

步骤如下:

1)将$http,$q 注入到匿名函数中。 2)创建一个变量对象,命名为loadJson。 3)在该对象中创建一个方法,命名为loadjson()。 4)创建一个变量d,赋予它$q.difer()方法。 5)使用http({})创建一个promise对象,并返回该promise对象。 6)返回ladJson对象。服务创建完毕。 7)在控制器中注入该服务,使用then()方法对自定义服务返回的承诺进行操作。

更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《》、《》及《

希望本文所述对大家AngularJS程序设计有所帮助。

猜你在找的JavaScript相关文章