2014-01-15 52 views
1

我正在嘗試將服務/提供程序注入到提供程序中,但似乎無法以與工廠或服務相同的方式執行此操作?請告訴我,我做錯了什麼,我知道這很簡單,可能只是一個愚蠢的錯誤,但我不能findout我應該如何注入提供者?

Plnkr:http://plnkr.co/edit/B1XGDZNOpiIJVE4q3zMP?p=preview

Uncaught Error: [$injector:modulerr] Failed to instantiate module myApp due to: Error: [$injector:unpr] Unknown provider: $window

回答

3

正如@Michael提到的,你不能用這種方式向提供者注入依賴。你可以在get方法中提供你的依賴項

this.$get =['$window', 'alert', function (window, alert){ 
}]; 
+0

非常感謝你的幫助Chandermani,現在就開始工作。 – mr1031011

2

你不能做到這一點。供應商將在配置階段註冊。在這個階段,這些服務還沒有可用於注射。請參閱http://docs.angularjs.org/guide/module - 模塊加載&相關性

也結帳http://docs.angularjs.org/guide/providers。在那裏你會看到配置階段有什麼可用的。

+0

hi @Mchael,所以在我的情況下,我應該回到使用工廠呢?或者我可以以某種方式注入$ get函數? – mr1031011

+1

看到答案表格Chandermani – michael

+0

非常感謝你的幫助邁克爾,它的工作原理。 – mr1031011

相關問題