开发手册 欢迎您!
软件开发者资料库

AngularJS - 服务

AngularJS服务 - 学习从基础开始,以先进的理念与实例包括概述,环境设置,MVC架构,第一个应用程序,指令,表达式,控制器,过滤器,桌子,HTML DOM,模块,形式简单,简单的步骤AngularJS,包括阿贾克斯,视图,范围,服务项目,依赖注入,自定义指令,内部化,待办事项应用,记事本应用,引导应用程序,登录应用程序,上传文件,在网上申请,导航菜单,切换菜单,订单,搜索选项卡,拖动应用,购物车申请,翻译申请,图表申请,地图申请,分享申请,天气申请,计时器申请,传单申请,Lastfm申请。

AngularJS使用服务架构支持关注点分离的概念.服务是JavaScript函数,它们只负责执行特定任务.这使得它们成为可维护和可测试的单个实体.控制器和过滤器可以根据需要调用它们.服务通常使用AngularJS的依赖注入机制注入.

AngularJS提供了许多内置服务.例如,$ http,$ route,$ window,$ location等.每个服务负责一个特定的任务,例如$ http用于进行ajax调用以获取服务器数据,$ route用于定义路由信息等.内置服务总是以$符号为前缀.

有两种方法可以创建服务 :

  • 工厂

  • 服务

使用工厂方法

在这个方法中,我们首先定义一个工厂,然后为它分配方法.

var mainApp = angular.module("mainApp", []);mainApp.factory('MathService', function() {   var factory = {};      factory.multiply = function(a, b) {      return a * b   }      return factory;});

使用服务方法

在此方法中,我们定义一个服务,然后为其分配方法.我们还为它注入了一个已经可用的服务.

mainApp.service('CalcService', function(MathService) {   this.square = function(a) {      return MathService.multiply(a,a);   }});

示例

以下示例显示了使用上述所有指令 :

testAngularJS.htm

         Angular JS Services                           

AngularJS Sample Application

                     

Enter a number: 

         X2         

Result: {{result}}

      
                     

输出

在网络浏览器中打开文件 testAngularJS.htm 并查看结果.