【发布时间】:2014-01-12 02:56:25
【问题描述】:
我最近开始使用 AngularJS,我现在构建应用程序的方式是这样的:
MainController.js
var app = angular.module('app', ['SomeController', 'MainController']);
app.controller('MainController', function ($scope) {
// do some stuff
}
SomeController.js
var SomeController= angular.module('SomeController', []);
SomeController.controller('SomeController', function ($scope) {
$scope.variable = "test";
// do some otherstuff
}
我遇到的问题是范围没有在模块之间共享。例如,从 MainController 我无法获取变量“test”。
- 对此的最佳做法是什么?我是否将所有控制器存储在 1 个文件中的 1 个模块中?
- 我怎样才能拥有 2 个控制器的 1 页并在它们之间共享
$scope,或者将所有内容都放在一个控制器中是否可以?
【问题讨论】:
-
这绝对是 X/Y 问题。如果你需要做这样的事情,那你就做错了。更新您的答案以解释您实际想要完成的工作。
-
基本上我在问我应该怎么做,我不一定需要这样做。
-
看我的回答,只要确保你将属于一起的东西打包在一起,而不是耦合不应该耦合的东西。
标签: angularjs angularjs-scope angularjs-module