Angular应用程序在划分视图路径时是否应使用ngModules概念或页面?

时间:2018-05-28 07:48:25

标签: angular

我正在考虑如何正确和最佳地划分我的Angular(5)项目结构。存在将结构划分为特定ng模块的概念,但是也可以通过使用例如组件来实现目标。查看/页面。

低于业务结构时,最佳方法是什么?应将哪些元素理解为模块,哪些元素属于这些模块的页面/视图/组件?

我应该考虑模块吗?

PS。大多数呈现的视图包含表格(每个视图1或2个表格)+表格。

.
├── HOME
├── MONITOR
|   ├── MONITOR subpage 1 (table)
|   └── MONITOR subpage 2 (table)
├── SCHEDULE
|   ├── SCHEDULE subpage 1 (table)
|   └── SCHEDULE subpage 2 (form)
├── DATA ANALYSIS
|   ├── DATA ANALYSIS subpage 1 (2 tables)
|   └── DATA ANALYSIS subpage 2 (table)
├── DATA QUALITY
|   ├── DATA QUALITY subpage 1 (form)
|   └── DATA QUALITY subpage 2 (table)
├── CONFIGURATION 
└── USER SETUP

1 个答案:

答案 0 :(得分:0)

我不认为你正确地获得了Angular的角色。

(或者我没有正确地提出您的问题)

无论如何,在这两种情况下,让我彻底解释一下。

模块

Angular模块是一种功能,可以定义应用程序的给定部分的工作方式。

在模块中,您可以定义组件,导入依赖项,然后导出要在其他模块中使用的功能。

部件

Angular组件是一种允许您将逻辑放入视图的功能。组件由类和模板组成。它们被声明为模块,用于向用户显示内容(并处理用户交互)。

结构

没有关于项目结构的规则,只有良好的做法。没有人会责怪你不跟随他们。

According to the style guide,你的结构应该是LIFT:

  • L 轻松查看您的文件
  • 轻松识别文件的目的
  • F 通过每个文件夹最多包含7个文件来锁定您的结构
  • T D R 重新 Y 我们自己。

如果我是你,就你的结构而言,我会这样做

.
├── Home (module)
├── Monitor (module, component with router-outlet)
|   ├── Monitor page 1 (component)
|   └── Monitor page 2 (component)
// Same for the others, I'm DRY
└── User setup (module, service)