Performance: Standalone vs module-based decision
MEDIUM IMPACT
This affects initial page load speed and rendering performance by changing how Angular loads and compiles components and modules.
import { Component } from '@angular/core'; @Component({ selector: 'app-root', standalone: true, template: `<h1>Hello Standalone!</h1>`, imports: [] }) export class AppComponent {}
import { NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import { AppComponent } from './app.component'; @NgModule({ declarations: [AppComponent], imports: [BrowserModule], bootstrap: [AppComponent] }) export class AppModule {}
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Module-based components | More nodes due to larger bundles | Multiple reflows due to delayed rendering | Higher paint cost from larger styles | [X] Bad |
| Standalone components | Fewer nodes initially | Single reflow after fast render | Lower paint cost with scoped styles | [OK] Good |