Javascript 继承和依赖注入如何与angular模块一起工作?
我对角度模块的工作原理以及使用它们的最佳方式有点困惑。我在一本书中读到,无论哪个模块包含服务,服务都是全球可用的。过滤器和指令显然也可以在整个应用程序的模板文件中使用 一个简单的例子:Javascript 继承和依赖注入如何与angular模块一起工作?,javascript,angularjs,Javascript,Angularjs,我对角度模块的工作原理以及使用它们的最佳方式有点困惑。我在一本书中读到,无论哪个模块包含服务,服务都是全球可用的。过滤器和指令显然也可以在整个应用程序的模板文件中使用 一个简单的例子: angular.module('main',[ 'one', 'two', 'three' ]); angular.module('one',[]).service('oneService', ...); angular.module('two',[ // angular-modul
angular.module('main',[
'one',
'two',
'three'
]);
angular.module('one',[]).service('oneService', ...);
angular.module('two',[
// angular-module 'one' does not have to be passed here
]).controller(function(oneService){
// available here
oneService.do();
});
angular.module('three',[]);
// not a good idea
angular.module('three').service('oneService', ...);
这实际上给我带来了几个问题:
- 如果没有真正的闭包,“思考”角模的好方法是什么李>
- 除了语义和由此产生的文件夹结构(无需使用模块即可实现)之外,将一个应用程序拆分为不同模块的好处是什么李>
- 当对模块使用点表示法时,是否存在任何继承automagic,例如
和angular.module('main')
angular.mopdule('main.customers')
- 将一个应用程序拆分为不同的应用程序(而不是模块)是否是一种可能的替代方案,例如,每条路线一个应用程序,如果是这样,什么是一种好的方式
- 每个功能的一个模块
- 每个可重用组件(特别是指令和过滤器)的模块
- 以及应用级模块,其依赖于上述模块并且包含任何初始化代码
- 模块只是配置DI子系统的一种方式(至少到目前为止)
- 如果您确实想使用模块,请按功能而不是按类型拆分应用程序
- 实际上,现在建议您使用每个功能一个模块来构造应用程序
- 模块目前并没有提供太多好处,但在不久的将来,当实现视图的延迟加载时,它们可能会提供很多好处