簡體   English   中英

依賴將空模塊注入Angular中的控制器

[英]Dependency Injecting an empty module into a controller in Angular

我試圖將一個模塊注入到另一個模塊中,前者只是一個空模塊。

angular.module('module1', []);
angular.module('module2', [])
.controller('Module2Ctrl', ['module1', '$scope', function (module1, $scope) {
  $scope.expression = 'hello!';
}]);

HTML:

<html ng-app="module2">
  <body ng-controller="Module2Ctrl">
    <h1>{{expression}}</h1>
  </body>

</html>

我收到了可怕的Unknown provider: module1Provider <- module1 <- Module2Ctrl消息。

這是怎么回事? 我相信所有內容都按應有的定義進行了定義-盡管module1沒有定義,但我無法在任何地方找到有關阻止其工作的信息。

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

謝謝 :-)

無法將angular.module注入controller內部,只能將一個angular.module注入另一個模塊內部。

angular.module('module2',['module1'])

您絕對不應該那樣做。 只能注入角組件,例如服務,控制器,工廠,過濾器,提供者等。

要在頁面上初始化angular,可以執行angular.bootstrap

angular.bootstrap(document,["module2"])

您注入提供程序(例如工廠,服務等),而不注入模塊。 卸下module1進樣器,它將起作用。 您正在考慮做的可能是將module2聲明為module1的模塊依賴項:

angular.module('module1', ['module2']);

然后ng-app="module"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM