factory、service、provider

我們先通過一段代碼來認(rèn)識一下factoryservice、provider

var myApp = angular.module('myApp', []);
/*
 * Factory
 */
myApp.factory('Factory', function() {
    return {
        sayHello: function() {
            return "Hello, 張先生";
        }
    };
});
/*
 * Service
 */
myApp.service('Service', function() {
    this.sayHello = function() {
        return "Hello, 張先生";
    };
});
/*
 * Provider
 */   
myApp.provider('Provider', function() {
    this.name = '先生';
    this.$get = function() {
        var name = this.name;
        return {
            sayHello: function() {
                return "Hello, " + name;
            }
        }
    };

    this.setName = function(name) {
        this.name = name;
    };
});
/*
 * config provider
 */        
myApp.config(function(myProvider){
    myProvider.setName('張先生');
});
/*
 * 方法調(diào)用
 */
function MyCtrl($scope, Provider, Factory, Service) {
    $scope.hellos = [
        Provider.sayHello(),
        Factory.sayHello(),
        Service.sayHello()];
}
factory: factory是以個可注入的function。當(dāng)使用factory來創(chuàng)建服務(wù)的時候,相當(dāng)于新創(chuàng)建了一個對象,然后在這個對象上新添屬性,最后返回這個對象。
service: service是一個可注入的構(gòu)造函數(shù)。service是單例模式的。當(dāng)使用service創(chuàng)建服務(wù)的時候,相當(dāng)于使用new關(guān)鍵詞進(jìn)行了實例化。因此,你只需要在this上添加屬性和方法,服務(wù)就會自動的返回this
provider是一個可配置的factory。provider是唯一一種可以創(chuàng)建用來注入到config()函數(shù)的服務(wù)的方式。想在你的服務(wù)啟動之前,進(jìn)行一些模塊化的配置的話,就使用provider。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.每個網(wǎng)站的請求數(shù)據(jù)的格式基本一致,不可能一會json格式,一會xml格式。所以可以通過這點固定每個爬蟲的請求格...
    薛云龍閱讀 215評論 0 0
  • 我的愛人 不要對我有太多的奢望 只想和你共建一個溫暖、平和的家 也許它并不那么豪華氣派 我愿給你 做一頓可口的飯菜...
    黃自立清閱讀 183評論 1 2
  • 二天二夜穿越昆侖山脈,唐古拉山脈一路大好風(fēng)光,美景美不勝收,美醉了美翻了。
    增祥影媒閱讀 406評論 0 1
  • 閱讀時間:2015年11月19日,閱讀時間:上午9點到10點半。 閱讀書本:《粘?。鹤寗?chuàng)意更有黏性》中信出版社,電...
    民大鐵老師閱讀 269評論 0 1
  • 時隔多年再次開始寫日記,竟然還是因為那些無處安放的情感,不過換了主角不過寫法更加成熟了而已。唯一不變的還是那個希望...
    穆川閱讀 465評論 0 0

友情鏈接更多精彩內(nèi)容