[英]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.