导入模块以在其他模块中部分使用

时间:2019-02-24 15:50:49

标签: angular

我意识到大多数代码示例都将材料模块组件导入一个模块中,然后将其导入任何地方以供使用,如下所示;

import { NgModule } from '@angular/core';
import {
  MatButtonModule,
  MatMenuModule,
  MatToolbarModule,
  MatIconModule,
  MatCardModule
} from '@angular/material';

@NgModule({
  imports: [
    MatButtonModule,
    MatMenuModule,
    MatToolbarModule,
    MatIconModule,
    MatCardModule
  ],
  exports: [
    MatButtonModule,
    MatMenuModule,
    MatToolbarModule,
    MatIconModule,
    MatCardModule
  ]
})
export class MaterialModule {}

但是,假设我只想在一个模块中使用MatMenuModule,而其他模块可能不需要它,或者3.模块可能不需要第一个和第二个所需的组件,那么使用材料或另一个共享模块的最佳实践是什么?元素部分地位于其他模块中,为什么不在应用模块中导入和导出材料模块,而不是在所有地方导入?

1 个答案:

答案 0 :(得分:0)

我看到大多数人都创建了一个单独的模块,例如material.module.ts,并将所有Mat模块包含在此文件中,并将此模块导入所需的模块中。

这样,代码看起来更整洁,但对应用程序的大小而言无效

我更喜欢只导入特定模块所需的Mat模块。