码迷,mamicode.com
首页 > Web开发 > 详细

Angular JS 自定义服务

时间:2015-11-22 17:15:59      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:

Angular JS 自定义服务 


定义服务的方式有如下几种:

    1 变量方式(value Recipe)
    2 工厂方式(factory Recipe)
    3 服务方式(service Recipe)
    4 供应者方式(provider Recipe)
    5 常量方式(Constant Recipe)
    6 特殊目的对象(Special Purpose Objects)

使用value来定义

    var mainApp = angular.module("mainApp",[]);
    
    mainApp.controller(‘MyController‘, [‘clientId‘, function MyController(clientId) { 
    this.clientId = clientId; 
    }]);

使用factory方法

        mainApp.factory("myService",[function(){
                return {
                    name:"abc"
                }
            }]);
            
     注:工厂方式 能够创建任何类型的服务,对象常量,方法,甚至一个自定义类型的实例。

使用service方法

    app.service(‘myService‘,function(){
        this.name = ‘abc‘;
        this.value = ‘value‘;
    });

使用provider来定义

    mainApp.provider(‘myService‘, [function() {
        return {
                name:"abc"
            }
    }]);


    注意:factory和service能注入内置服务,而provider是不能注入内置服务的

总结:

    1 注入器通过使用 recipes 来创建两种类型的对象:服务和特殊目的对象。
    2 一共有五种类型的 recipe 用于定义如何创建对象:变量、工厂、服务、供应者和常量。
    3 工厂和服务是最常用的方式。两者仅有的不同是服务方式对于自定义类型对象效果更好,而工厂方式可以提供 JavaScript 基元和方法。
    4 供应者方式是核心方式,所有其它方式都是它的语法糖。
    5 供应者是最复杂的方式类型。除非你正在构建一段需要全局配置的可重用代码,否则不要使用它。
    6 所有特殊目的对象都通过工厂方式来定义,除了控制器。

Angular JS 自定义服务

标签:

原文地址:http://www.cnblogs.com/muqnly/p/4986069.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!