0
我有一個設計爲自包含的角模塊。這一個消費應用程序可以通過URL PARAM添加指令,它會使用該URL時,它與小部件交互時的整體數據源。這有一個通用的LoadService,它使用$ http來加載數據,並且需要特定的JSON格式來運行這個小部件。你如何注入條件的服務到AngularJS 1控制器
那麼現在我想重構,從而使他人也可以創建自定義負載服務,並將其注入到模塊,但如果它不注射,然後它會使用默認的數據負載。所以我試圖找出如何創建,如果它是由消耗了該模塊的應用程序定義CustomLoadService注入的方式。但是,如果自定義服務沒有定義,它不應該錯誤,它應該只使用默認服務。
我正在調查$injector.get
,看到作爲一種可能性,但我無法將$injector
注入控制器。我認爲這將是簡單的$location
注入。喜歡的東西...
angular
.module('Widget')
.controller('WidgetController',[
'$scope',
'WidgetLoadService',
'$injector',
WidgetController
]);
這種方法似乎沒有工作,所以我想知道......什麼是最好的最「角的方式」來解決這個問題。我應該如何使用$注入器。
看看我提供的,防止它的代碼,我在做什麼錯加工?我碰到一個「$注射器沒有定義」 –
也許我錯過了差異,但好像你的榜樣應該是沒有什麼不同的,那麼我提供的代碼,但我的不行,我失去了什麼? –
你實際上並沒有提供任何代碼......用你的代碼創建最小的plunk。 –