首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

从ng1看ng2 关于NgModule的简易归纳

不过这ng2的文档不看不要紧,一看真的是有些蛋疼,随便看个啥,连码代码加理解,估计一下午也就能看一个简单的概念,就比如今天想归纳的NgModule这部分东西,前后大概有30几页的东西,所以我觉的如果不写点东西总结一下...因此ng2改用了以Decorator的方式来使代码具有语意性,如下 @NgModule({ imports: [ ... ], declarations: [ ... ], providers...: [ ... ], exports: [ ... ] }) export class FooModule { } 通过NgModule这个装饰器来对一个class进行描述。...这个概念在ng1中同样有,但是和上面指出的问题一样,就是没有代码层面的语意性描述,为了更好的描述它,ng2中的root-module会提供额外的装饰器属性来修饰它 @NgModule({ ...,

91020

从 RouterModule.forRoot 方法说起

其命名约定意味着,在调用 forRoot() 方法时,必须向应用程序的根 NgModule 注册给定模块。 那为什么它需要在应用程序的根 module 中调用,而不是任何其他 NgModule?...这个接口是一个被接受的 NgModule import 并且有两个属性: interface ModuleWithProviders { ngModule: Type providers...这与根 NgModule 有什么关系? 事实上,虽然这个约定暗示着它应用在应用程序的根目录中导入,但在许多情况下,我们可以在非根 NgModule 中导入它,同样会起作用。...当 Angular 引导根 NgModule 时,所有 NgModule 中的所有可用导入,都会在那时注册并可供整个应用程序使用——它们是全局的。...这就是为什么在子 NgModule 中注册的提供程序在整个应用程序中都可用的原因。

41030

Angular 路由配置(预加载配置,懒加载配置)

NgModule作为Angular模块的核心,下面首先就来讲一讲。 1....@NgModule的作用: NgModule 最根本的意义是帮助开发者组织业务代码,开发者可以利用 NgModule 把关系比较紧密的组件组织到一起,这是首要的。...NgModule 用来控制组件、指令、管道等是否可以使用,处于同一个 NgModule 里面的组件默认互相可见,而对于外部的组件来说,只能看到 NgModule 导出( exports )的内容,也就是说...NgModule 是打包时候用到的最小单位,打包的时候会检查所有 @NgModule 和路由配置,Angular底层是使用webpack打包。...@NgModule结构说明: @NgModule({   declarations: [], //属于当前模块的组件、指令及管道   imports: [], //当前模板所依赖的项,即外部模块(包括

3.1K30

Angular 从入坑到挖坑 - 模块简介

、Overview Angular 入坑记录的笔记第七篇,介绍 Angular 中的模块的相关概念,了解相关的使用场景,以及知晓如何通过特性模块来组织我们的 Angular 应用 对应官方文档地址: NgModule...NgModule 使用根模块启动应用 常用模块 特性模块 二、Knowledge Graph ?...这种 Angular 内置的库也都是一个个的 NgModule,在开发中通过将组件、指令、管道、服务或其它的代码文件聚合成一个内聚的功能块,专注于系统的某个功能模块 常见的 NgModule 模块 模块名称...是一个带有 @NgModule 装饰器的类,通过函数的参数来描述这个模块,例如在上节笔记中创建的 CrisisModule,定义了我们在该特性模块中创建的组件,以及需要使用到的其它模块 ?...在使用 @NgModule 装饰器时,通常会使用到下面的属性来定义一个模块 declarations:当前模块中的组件、指令、管道 imports:当前模块所需的其它 NgModule 模块

1.8K20

从 Angular Component 和 Directive 的实例化,谈谈 Angular forRoot 方法的命令由来

有时在引导过程中,所有应用程序的 NgModule 都不可用。延迟加载就是这样一个例子。...当在路由期间延迟加载 NgModule 时,在延迟加载的 NgModule 中注册的 providers,提供程序及其子项在引导过程中不可用,此时 Angular 无法注册它们。...因此,它们仅在加载路由时才作为 providers 添加,而且它们的作用域是从延迟加载的 NgModule 及其子模块开始注入。...如果有多个延迟加载的 NgModule 尝试注册相同的提供程序,则 NgModule 树的每个节点都会以不同的实例结束。...作为消费者,当应用层序里使用到的某个库依赖项需要一个延迟加载的 NgModule 时,就需要调用其 forRoot 方法。

1K30
领券