Performance: Importing dependencies directly
This affects the bundle size and initial load time by controlling how much code is included and when it is loaded.
Jump into concepts and practice - no test required
import { MatButtonModule } from '@angular/material/button'; import { MatIconModule } from '@angular/material/icon'; import { MatCardModule } from '@angular/material/card'; import { MatInputModule } from '@angular/material/input'; import { MatToolbarModule } from '@angular/material/toolbar'; @NgModule({ imports: [MatButtonModule, MatIconModule, MatCardModule, MatInputModule, MatToolbarModule], }) export class AppModule {}
import { MatButtonModule, MatIconModule, MatCardModule, MatInputModule, MatToolbarModule } from '@angular/material'; @NgModule({ imports: [MatButtonModule, MatIconModule, MatCardModule, MatInputModule, MatToolbarModule], }) export class AppModule {}
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Import from root package | N/A | N/A | High due to large JS bundle | [X] Bad |
| Import dependencies directly | N/A | N/A | Lower due to smaller JS bundle | [OK] Good |
HttpClient from Angular's common HTTP package?import { HttpClient } from '@angular/common/http';import { Component } from '@angular/core';Component?@angular/core does not provide for Component, causing a syntax error.import { RouterModule } from '@angular/router';Cannot find module '@angular/router'. What is the most likely cause?NgIf and NgFor, from @angular/common in a single import statement. Which is the correct way to do this?NgIf and NgFor in one statement with braces and commas.