Angular中 provider依賴注入詳解

2021-08-21 15:56:27 字數 1713 閱讀 9764

provider可以封裝(value factory service constant除外),provider必須有乙個$get方法

使用provider的時候,我們不能單獨的配置,需要在config中來建立provider,在angular中在config中

只能注入提供服務的應用商,但是angualr提供了乙個$provide,因此在使用provider的時候在config中注入

的應該是$provide,通過$provider建立provider

provider是唯一一種可以建立用來注入到config()函式的服務的方式。想在你的服務啟動之前,進行一些模組化的配置的話,就使用provider。

$provide服務負責告訴angular如何創造乙個新的可注入的東西:即服務。服務會被叫做**商的東西來定義,你可以使用$provide來建立乙個**商。你需要使用$provide中的provider()方法來定義乙個**商,同時你也可以通過要求$provide被注入到乙個應用的config函式中來獲得$provide服務。使用方法是返回乙個$get函式,注意在config階段,只有provider能被注入。

//註冊模組

//註冊控制器 將value物件注入到控制器中

myprovider.f("我是 provider");

console.log(myprovider.num);

greeting("greeting");

});

this.number='123';

//provider建立服務的時候,唯一可以讓控制器訪問的屬性和方法是在$get()函式裡返回的屬性和方法。上面的**將$get新增到了this上面,最終這個函式會被返回。

this.$get=function(),

num:n};

}

});

//不注入provider 值得注意的是:config中只能夠傳遞提供服務的**商,而此時使用者中方法的話myprovider是乙個服務,

//因此我們要在後面使用駝峰命名法為其加上provider,其變成了myproviderprovider

// config裡允許注入的是provider和constance(常量),run裡允許注入的是provider和constant,還可以是factory,service,value

console.log(myproviderprovider)// config中的內容先輸出

myproviderprovider.number="我是改過後的值";

console.log(myproviderprovider);

});

//注入provider

$provide.provider('greeting',function();

};

});

});

Vue中provide和inject 用法

1.概念 成對出現 provide和inject是成對出現的 作用 用於父元件向子孫元件傳遞資料 使用方法 provide在父元件中返回要傳給下級的資料,inject在需要使用這個資料的子輩元件或者孫輩等下級元件中注入資料。使用場景 由於vue有 parent屬性可以讓子元件訪問父元件。但孫元件想要...

Vue中的provide和inject 依賴注入

一 名詞解析 provide object object inject array provide 提供依賴 是乙個物件,或者是乙個返回物件的函式。裡面呢就包含要給子孫後代的東西,也就是屬性和屬性值。inject 注入依賴乙個字串陣列,或者是乙個物件。屬性值可以是乙個物件,包含from和defaul...

PowerShell學習之Provider提供程式

目錄 provider提供程式 filesystem提供程式 登錄檔提供程式 在powershell中,對於檔案系統,如 c abc d abc,我們可以通過get itemproperty,get item,get childitem等命令訪問。訪問登錄檔,證書儲存,環境變數,函式,wsman其實...