javascript - AngularJS-咕噜声 : Does a solution exist to build a running application with only desired modules

标签 javascript angularjs build module gruntjs

我正在重构一个应用程序,我想遵循 John Papa 的指导方针,因为我发现它们对我的案例非常有趣和有用:John Papa Guidelines - Application Structure

因此,我决定将应用程序拆分为与功能相对应的不同模块。假设一个模块用于帐户功能,一个模块用于转账功能,一个模块用于用户设置功能。<​​/p>

根据 John Papa 的建议,我可以做得很好:一个应用程序模块和其他三个模块(account-module.js、transfer-module.js 和 user-settings-module.js)及其相应的导航(状态- config.js 等)。

我希望我已经说得足够清楚了,因为现在棘手的部分来了:D

我的想法是,我想根据我的需要构建两个(或更多)不同的应用程序。例如,我想构建一个没有传输模块的应用程序,并在我的 grunt 过程中执行此操作(通过配置)。

目前,我稍后会使用 include_source grunt 和 grunt_war,但没有办法更多地处于“Angular 模块”上下文中,而不是使用正则表达式来指定我想要的文件。 这些任务不允许我们说“好吧,我想打包这个、这个和这个模块”(那太棒了!)

我认为大型应用程序应该遇到这个问题,因为他们没有向每个客户提供所有业务模块,而是使其可配置(至少我希望他们是这样做的)。

问题是如何?他们这样做吗?是手动(无意义),还是他们为此目的编写了一些自定义 grunt (gulp) 任务或一些自定义脚本?

<小时/>

额外问题:假设我们生活在一个梦想世界中,并且为此存在一项艰巨的任务。我的下一个问题是,如何在我的应用程序中管理它以配置我的导航(菜单中不再有传输按钮)。我认为如果 grunt 任务和应用程序使用相同的配置文件,那不会成为问题,我将能够使用 grunt-angular-settings 任务在我的应用程序中拥有一个常量。

感谢您的关注,我很想读到您的文章:)

问候,亚辛·盖尔

最佳答案

有趣。看一下 angular.js 本身如何构建工件。在 src 代码中,它有一堆分散在不同文件夹中的模块。它引入了 lib/grunt/utils 和 lib/grunt/plugins 来处理构建过程,说明哪些模块应该进入哪个目标文件。您可能有兴趣尝试同样的方法,祝您好运。

<小时/>

https://github.com/angular/angular.js/blob/master/Gruntfile.js#L166

关于javascript - AngularJS-咕噜声 : Does a solution exist to build a running application with only desired modules,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27750375/

相关文章:

javascript - 带有 CSS 动画的 SVG 预加载器,在每个页面加载时随机化

node.js - 教程 AngularJS-npm 安装错误

java - 如何从 ant 构建文件的源文件夹中排除我的测试包?

maven - 将gradle/sbt/maven项目转换为裤子构建系统

javascript - 为什么 JSLint 警告我我的 switch-case 语句格式不正确?

javascript - 除非单击另一个链接,否则转到容器中的第一个链接

javascript - 如何根据另一个事件流推迟 Observable 的发射?

javascript - 在 Angular 应用程序中监听 socket.io

angularjs - $ dirty与$ invalid : What is the difference?

c++ - 禁用 "Processing/ORDER options..."的 MSBuild 输出