angular6 NgModule中定义模块module

用这个@NgModule()这个decorator ,放在一个class的上面,这个class一个一个module了

@NgModule() 里面的参数是一个对象,用来配置的,声明这个module里面的一些co'mponents, directives, pipes....

https://stackoverflow.com/questions/40393701/what-actually-is-ngmodule-in-angular

--------------------------------------------------------------

 

Angular NgModules differ from and complement JavaScript (ES2015) modules. An NgModule declares a compilation context for a set of components that is dedicated to an application domain, a workflow, or a closely related set of capabilities. An NgModule can associate its components with related code, such as services, to form functional units.

An NgModule is defined by a class decorated with @NgModule(). The @NgModule() decorator is a function that takes a single metadata object, whose properties describe the module. The most important properties are as follows.

declarations: The components, directives, and pipes that belong to this NgModule.

exports: The subset of declarations that should be visible and usable in the component templates of other NgModules.

imports: Other modules whose exported classes are needed by component templates declared in this NgModule.

providers: Creators of services that this NgModule contributes to the global collection of services; they become accessible in all parts of the app. (You can also specify providers at the component level, which is often preferred.)

bootstrap: The main application view, called the root component, which hosts all other app views. Only the root NgModule should set the bootstrap property.

 

-----------------------------

First of all, have another read of https://angular.io/docs/ts/latest/guide/ngmodule.html and definitely https://angular.io/docs/ts/latest/cookbook/ngmodule-faq.html as well.

An @NgModule does all the magic setup. It sets up the dependency injection, pulls in any 3rd party modules that it uses, declares all the Components/Directives/Pipes/etc. that are used within the module, exposes some of those Components etc. to other modules, sets up the routing for the module, and sets up any "boostrap" components that can be used as the root Component.

There's two types of modules. First, there's your 'Root module', which is the entry point of your app. You can technically put everything in your app into just one module.

Then there's 'Feature modules', which are used for separation of concerns during development, but also for things like lazy-loading of parts of the app. This is more of an issue for larger apps, but it doing it early can certainly help you set things up "right".

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值