簡體   English   中英

Angular.js命名間隔模塊控制器

[英]Angular.js namespacing modules controllers

我的應用程序目錄中具有以下結構:

scripts/
   modules/
     module1/
       controllers/
          MainController.js
     module2/
       controllers/
          MainController.js
   main.js

我要實現的是將每個模塊中的控制器置於其自己的名稱空間,例如:

module1.MainController
module2.MainController

因此,當我在html ng-controller="MainController"指令中使用它時,它將知道從哪個模塊為其提供服務。 模塊之間可以相互通信也很好。

請向我解釋我如何才能以最佳方式實現這一目標,如果可能的話?


我發現了這樣的東西: http : //jsfiddle.net/luisperezphd/j5jzsppv/,但是我不確定這是否是一個好的解決方案。 它使用angular.ng-modules.js


編輯:我正在嘗試使用Angular.js v.1.3.6。 在1.2.x版本上,名稱空間沒有問題。

使用常規依賴項注入將一個模塊注入另一個模塊:

var moduleTwo = angular.module('moduleTwo', ['otherModule']);

這允許moduleTwo知道otherModule 然后,您可以使用服務在控制器之間共享狀態。 服務是單例(僅存在一個實例),因此,如果多個控制器使用同一服務,它們將共享該狀態。

暫無
暫無

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

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