将角形材料包含在角形

时间:2019-07-20 12:18:14

标签: angular module angular-material

我正在使用日期选择器输入字段创建一个角度应用程序,我做了一些挖掘工作,发现最适合此功能的模块是角度材料,很好。

问题是我想知道我是否在我的代码中包含了材料库,在构建应用程序时它是否将整个模块和组件都包含在应用程序中。否则它将仅包含我仅使用的组件。

我的意思是假设角材料库为5MG,日期选择器组件为1MB,在构建阶段,它包含整个库5MB还是仅包含我仅导入了1MB的组件。

2 个答案:

答案 0 :(得分:-1)

只需安装npm install --save @agnular/material @angular/cdk @angular/animations,然后安装ng add @angular/material。而且你很好。就算您要使用日期选择器,您也需要导入模块import {MatDatepickerModule} from '@angular/material';。如果要使用MatCard,则需要导入MatCardModule

答案 1 :(得分:-1)

这在很大程度上取决于您如何包括角度材料库。这些模块可摇树,因此您可以仅导入所需的模块。

我看到的一种模式是创建一个MaterialModule并仅从Angular Material导入和导出所需的模块。

它看起来像这样: material.module.ts

import { NgModule } from '@angular/core';
import { MatAutocompleteModule } from '@angular/material/autocomplete';
import { MatSelectModule } from '@angular/material/select';

const materialDesignModules = [
  MatAutocompleteModule,
  MatSelectModule,
];

@NgModule({
  exports: [...materialDesignModules],
})
export class MaterialDesignModule {}

然后您将在需要使用该模块的地方导入该模块。