2017-04-21 76 views
0

我必須添加一些應用程序特定的功能角度引導確認directive擴展角度引導確認指令

我可以直接在我的代碼中直接使用它,但是當我嘗試通過創建自己的指令來使用它時,我一直在獲取模塊注入器錯誤。

Error: [$injector:unpr] http://errors.angularjs.org/1.5.8/$injector/unpr?p0=mwlConfirmProvider%20%3C-%20mwlConfirm%20%3C-%20myDirective 

全球宣言

angular.module('myModule', 
[ 
    'ui.bootstrap', 
    'ngSanitize', 
    'mwl.confirm' 
]); 

指令

angular 
    .module('myModule') 
    .directive('myDirective', directive); 

directive.$inject = ['mwlConfirm']; 

function directive(mwlConfirm) { 
    return { 
     restrict: 'A', 
     link: linkFunction 
    }; 

    function linkFunction(scope, element, attrs) { 

      //code removed for brevity 
      var confirmOptions = ... 
      ... 
      ... 
      mwlConfirm.value('confirmationPopoverDefaults', confirmOptions); 
    } 
} 

有什麼不好的代碼?

+1

無法注入指令。看看[Understanding Directives-extends](https://github.com/angular/angular.js/wiki/Understanding-Directives#extending-directives) – charlietfl

回答

0

我不認爲你可以注入指令作爲依賴到另一個指令。您可以使用服務和工廠來完成此任務,但指令將應用於DOM。