Creé un proyecto simple de Angular 9 con solo unos pocos componentes simples. He agregado material angular usando:
ng add @angular/material
Y después de hacerlo, ejecuté npm start y noté que comenzó a compilar todo @angular con un montón de componentes @angular/material/* que no uso en mi aplicación:
Compiling @angular/cdk/keycodes : es2015 as esm2015 Compiling @angular/animations : es2015 as esm2015 Compiling @angular/compiler/testing : es2015 as esm2015 Compiling @angular/core : es2015 as esm2015 Compiling @angular/cdk/collections : es2015 as esm2015 Compiling @angular/common : es2015 as esm2015 Compiling @angular/animations/browser : es2015 as esm2015 Compiling @angular/cdk/observers : es2015 as esm2015 Compiling @angular/core/testing : es2015 as esm2015 Compiling @angular/cdk/platform : es2015 as esm2015 Compiling @angular/cdk/accordion : es2015 as esm2015 Compiling @angular/cdk/portal : es2015 as esm2015 Compiling @angular/common/http : es2015 as esm2015 Compiling @angular/cdk/bidi : es2015 as esm2015 Compiling @angular/cdk/a11y : es2015 as esm2015 Compiling @angular/cdk/text-field : es2015 as esm2015 Compiling @angular/cdk/layout : es2015 as esm2015 Compiling @angular/common/testing : es2015 as esm2015 Compiling @angular/platform-browser : es2015 as esm2015 Compiling @angular/forms : es2015 as esm2015 Compiling @angular/router : es2015 as esm2015 Compiling @angular/cdk/stepper : es2015 as esm2015 Compiling @angular/cdk/table : es2015 as esm2015 Compiling @angular/cdk/tree : es2015 as esm2015 Compiling @angular/animations/browser/testing : es2015 as esm2015 Compiling @angular/cdk/scrolling : es2015 as esm2015 Compiling @angular/platform-browser/animations : es2015 as esm2015 Compiling @angular/cdk/clipboard : es2015 as esm2015 Compiling @angular/platform-browser/testing : es2015 as esm2015 Compiling @angular/router/testing : es2015 as esm2015 Compiling @angular/common/http/testing : es2015 as esm2015 Compiling @angular/platform-browser-dynamic : es2015 as esm2015 Compiling @angular/cdk/drag-drop : es2015 as esm2015 Compiling @angular/cdk/overlay : es2015 as esm2015 Compiling @angular/material/core : es2015 as esm2015 Compiling @angular/material/expansion : es2015 as esm2015 Compiling @angular/platform-browser-dynamic/testing : es2015 as esm2015 Compiling @angular/material/divider : es2015 as esm2015 Compiling @angular/material/button : es2015 as esm2015 Compiling @angular/material/sort : es2015 as esm2015 Compiling @angular/material/form-field : es2015 as esm2015 Compiling @angular/material/icon : es2015 as esm2015 Compiling @angular/material/tooltip : es2015 as esm2015 Compiling @angular/material/dialog : es2015 as esm2015 Compiling @angular/material/badge : es2015 as esm2015 Compiling @angular/material/card : es2015 as esm2015 Compiling @angular/material/button-toggle : es2015 as esm2015 Compiling @angular/material/bottom-sheet : es2015 as esm2015 Compiling @angular/material/select : es2015 as esm2015 Compiling @angular/material/checkbox : es2015 as esm2015 Compiling @angular/material/input : es2015 as esm2015 Compiling @angular/material/chips : es2015 as esm2015 Compiling @angular/material/autocomplete : es2015 as esm2015 Compiling @angular/material/grid-list : es2015 as esm2015 Compiling @angular/material/icon/testing : es2015 as esm2015 Compiling @angular/material/list : es2015 as esm2015 Compiling @angular/material/paginator : es2015 as esm2015 Compiling @angular/material/progress-spinner : es2015 as esm2015 Compiling @angular/material/menu : es2015 as esm2015 Compiling @angular/material/progress-bar : es2015 as esm2015 Compiling @angular/material/radio : es2015 as esm2015 Compiling @angular/material/datepicker : es2015 as esm2015 Compiling @angular/material/sidenav : es2015 as esm2015 Compiling @angular/material/slider : es2015 as esm2015 Compiling @angular/material/slide-toggle : es2015 as esm2015 Compiling @angular/material/snack-bar : es2015 as esm2015 Compiling @angular/material/stepper : es2015 as esm2015 Compiling @angular/material/table : es2015 as esm2015 Compiling @angular/material/toolbar : es2015 as esm2015 Compiling @angular/material/tabs : es2015 as esm2015 Compiling @angular/material/tree : es2015 as esm2015
Mi pregunta es: ¿por qué sucedió? ¿Por qué tiene que suceder eso?
Antes de tener @angular/material en mi proyecto, nada de eso tenía que suceder al ejecutar npm start . Aquí está mi app.module.ts :
@NgModule({ declarations: [ AppComponent, ParentCompComponent, ChildCompComponent, MainComponent ], imports: [ BrowserModule, AppRoutingModule, FormsModule, ReactiveFormsModule, MatButtonModule, MatToolbarModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
En tsconfig.json en:
Espero que funcione para ti.