AngularJS:使用多模块并在模块之间进行通信?

标签 angularjs angularjs-scope angular-ui-router angularjs-module

我正在尝试找到一些很好的教程或文档来解释 AngularJS 和多模块。据我了解,将 Angular 分成模块是一个好主意,而不是像大多数教程和演示那样使用 1 个模块。

什么可以帮助我决定将哪些内容分成模块。采取一个标准网页,其中包含一个工具栏、一些处理食物的功能(添加、更新和删除 - 标准 CRUD)以及另一个处理饮料的功能。因此,根据我的理解,我可以将这两种类型的功能分开,但是工具栏呢,这可能是这两种功能所共有的东西,所以我应该将其分开?

将内容分离到模块中,我应该如何将此信息注入(inject)到我的index.js中?使用 Angular “包含”?

最后,不同模块之间的通信,是否有标准的方法?

我认为我拥有所有可用的背景知识,但我只是找不到任何具体的教程、文档或示例。

我希望有人有一些东西,他们可以为我指明正确的方向。

谢谢

最佳答案

最好分成多个模块,这些模块负责应用程序的不同子系统或功能。在 Angular 中,标准方法是使用 module dependency指定模块二想要使用模块一中的服务/工厂/提供者:

// Define `ModuleOne` in some JS file, say `one.js`.
angular.module('ModuleOne', [])
.factory('firstFactory', function () {
    return {
    //...
    };
});

// Use it from some other JS file, say `two.js`.
angular.module('ModuleTwo', ['ModuleOne'])
.controller('MyCtrl', ['firstFactory', function (firstFactory) {
}]);

关于AngularJS:使用多模块并在模块之间进行通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31921889/

相关文章:

javascript - angularjs 的引用对象

javascript - 在 Controller 渲染 View 之前将ajax数据加载到$scope中

angularjs - 如何将 ng-animate 与 ui-view 而不是 ng-view 一起使用?

javascript - 如何通过服务(AngularJS)用值填充变量

php - Angularjs如何获取服务中$http响应返回的Json格式的解析数据

angular - 在 Angular 2/4/6 应用程序中管理状态的最佳实践

angular - 在地址栏上键入的任何 url 都会导航回 Angular 4 中的根 url

javascript - Angularjs 中的幻灯片无法按预期工作

javascript - 我必须编码 $apply 才能让我的 ng-repeat 工作,有更好的方法吗?

angularjs - Angular 中$$的含义