如何在 AngularJS 中获得真正的模块化应用程序及其包含结构?
How to get a true modular app in AngularJS and their include structure?
我一直在摆弄 Angular,我想根据它们在我的应用程序中的角色拆分所有文件。
我想要每个 "page" 的文件夹,例如 /home 或 /products,并处理各自文件夹中的所有内容(这听起来是个好主意)。
但是,现在我不确定如何加载这些文件,甚至不知道在哪里加载这些文件。
这是我当前的文件结构:
由于某些限制,我无法使用其他有用的工具,这需要直接在代码中进行。
解决这个问题的最佳方法是什么?
问题的第一部分:
没有 默认 方式来组织您的 angular 应用程序。
但是,有一些准则。我一直感谢自己阅读了 Angular 1 app-structuring-guidelines by John Pappa,它让我对你提出的同一个问题有了启发。
目前,我已将我所有的应用程序组织成 folder-by-functionality 方法而不是 folder-by-type 方法(即控制器文件夹中的所有控制器,服务文件夹中的所有服务等) .
你问题的第二部分:
只需使用 Gulp 或 Grunt,然后将单个文件导入索引
Web 越来越面向组件,现在所有最著名的前端框架都采用可重用组件策略(React 和 Angular 2 严重依赖它)
如果您希望 angular 应用程序尽可能模块化,您必须将与组件相关的所有内容放在单独的文件夹中(html 模板、css 样式和 js逻辑),并拆分服务和资产之间的共享逻辑
在您的情况下,项目结构示例可以是:
应用/
- 资产/
//将图片、字体和共享样式放在这里
- 服务/
- apiService.js
- utilsService.js
- 等等……
- 组件
- 首页/
- home.js
- home.css
- home.html
- 产品/
- products.js
- products.css
- products.html
- 等等等等/...
- index.js
index.html
我一直在摆弄 Angular,我想根据它们在我的应用程序中的角色拆分所有文件。
我想要每个 "page" 的文件夹,例如 /home 或 /products,并处理各自文件夹中的所有内容(这听起来是个好主意)。
但是,现在我不确定如何加载这些文件,甚至不知道在哪里加载这些文件。
这是我当前的文件结构:
由于某些限制,我无法使用其他有用的工具,这需要直接在代码中进行。
解决这个问题的最佳方法是什么?
问题的第一部分:
没有 默认 方式来组织您的 angular 应用程序。
但是,有一些准则。我一直感谢自己阅读了 Angular 1 app-structuring-guidelines by John Pappa,它让我对你提出的同一个问题有了启发。
目前,我已将我所有的应用程序组织成 folder-by-functionality 方法而不是 folder-by-type 方法(即控制器文件夹中的所有控制器,服务文件夹中的所有服务等) .
你问题的第二部分: 只需使用 Gulp 或 Grunt,然后将单个文件导入索引
Web 越来越面向组件,现在所有最著名的前端框架都采用可重用组件策略(React 和 Angular 2 严重依赖它)
如果您希望 angular 应用程序尽可能模块化,您必须将与组件相关的所有内容放在单独的文件夹中(html 模板、css 样式和 js逻辑),并拆分服务和资产之间的共享逻辑
在您的情况下,项目结构示例可以是:
应用/
- 资产/ //将图片、字体和共享样式放在这里
- 服务/
- apiService.js
- utilsService.js
- 等等……
- 组件
- 首页/
- home.js
- home.css
- home.html
- 产品/
- products.js
- products.css
- products.html
- 等等等等/...
- index.js
- 首页/
index.html