我一直在看视频和阅读文章,但这篇文章让我很困惑,在文章的开头它说
The applications in Angular follow modular structure. The Angular apps will contain many modules, each dedicated to the single purpose. Typically module is a cohesive group of code which is integrated with the other modules to run your Angular apps.
A module exports some classes, function and values from its code. The Component is a fundamental block of Angular and multiple components will make up your application.
A module can be a library for another module. For instance, the angular2/core library which is a primary Angular library module will be imported by another component.
它们是可交换的条件吗?组件是模块吗?但反过来不是吗?
现在发表答案已经太迟了,但我觉得我的解释对Angular初学者来说很容易理解。下面是我在演讲中举的一个例子。
把你的angular应用程序看作一个建筑。一栋建筑可以有N个公寓。公寓被认为是一个模块。一个Apartment可以有N个房间,这些房间对应于Angular应用的组件。
现在,每个公寓(模块)都将有房间(组件),电梯(服务),以便更大的进出公寓,电线(管道)转换,使其在公寓中有用。
你也会有游泳池,网球场,这些都是由所有居民共享的。所以这些可以被认为是SharedModule中的组件。
基本上,区别如下:
这是我为初学者准备的关于Angular构建模块的课程
跟随我的幻灯片来理解Angular应用的构建模块
角组件
组件是Angular应用的基本构建块之一。一个应用可以有多个组件。在一个正常的应用程序中,一个组件包含一个HTML视图页面类文件,一个类文件控制HTML页面的行为和CSS/scss文件样式你的HTML视图。组件可以使用@Component装饰器创建,它是@angular/core模块的一部分。
import { Component } from '@angular/core';
并创建一个组件
@Component({selector: 'greet', template: 'Hello {{name}}!'})
class Greet {
name: string = 'World';
}
下面是创建组件或angular应用的教程
角模块
angular模块是一组angular的基本构建模块,比如组件、指令、服务等。一个应用程序可以有多个模块。
可以使用@NgModule装饰器创建模块。
@NgModule({
imports: [ BrowserModule ],
declarations: [ AppComponent ],
bootstrap: [ AppComponent ]
})
export class AppModule { }