2016-09-24 74 views
2

我正在将我的应用升级到angular2 RC,并对ngModule有疑问。整个应用的ngModule导入模块?

可以说我使用了一些组件模块,它具有我想在我的应用程序周围使用的所有组件类型。

为什么我需要分别在每个模块中导入它们? 为什么我不能告诉appModule - “嗨,确保每个人都得到这个。”

不会在每个使用他的模块中反复使用模块只是浪费资源? 或者是angular2使用它们作为单身人士?如果不是那样会成为问题? - 如果我确实需要新的联系人

回答

2

模块只是Angular的编译器告诉的一种方式,它在通过模板时应该期待哪些组件。

理想情况下,您希望您的AppModule干净,只导入需要引导页面的内容。接下来,您导入(或路由到延迟加载的模块)您的功能模块,它们组成您的应用程序。

如果您经常在多个不同模板中使用一个组件,则可以创建一个SharedModule,它将在您的应用程序中声明最常见的组件和管道,并将该共享模块导入到功能模块中。

当Angular 2编译你的特征模块并从共享模块中找到一个组件时,它会知道如何编译它,因为你导入了该模块。