Explain the query decorators.
Skip to solutionKEEP THE
mediumFrontend
What are @ViewChild and @ContentChild?
788 views
01
Understand the problem
viewchildqueries
02
Attempt it yourself
Sketch your approach before reading the solution — that's what interviews test.
Nudge consolestandby
Stuck? Beam a request up — the console returns a conceptual nudge that guides your logic without spoiling the implementation.
03
Study the solution
@ViewChild queries an element/component/directive from the component's own template; @ContentChild queries content projected into it via <ng-content>. Both give a reference (after the relevant lifecycle hook) to call methods or read properties on the child.
Solution ready — 2 min read
Classified // press E to declassify
04
Read the code
Query a child in the view
import { Component, ViewChild, ElementRef, AfterViewInit } from '@angular/core';
@Component({
selector: 'app-root',
standalone: true,
template: '<input #box /> <button (click)="focus()">Focus</button>',
})
export class AppComponent implements AfterViewInit {
@ViewChild('box') box!: ElementRef<HTMLInputElement>;
ngAfterViewInit() {
// available now (the view has been initialized)
console.log('input found:', !!this.box);
}
focus() { this.box.nativeElement.focus(); }
}05
Join the discussion
Discussion (0)
Sign in to join the discussion.
No responses yet. Be the first to share what you think.
Transmission complete // awaiting log
KEEP THE
STREAK ALIVE.
Dossier 34 of 121 decoded in the Angular track. One more won't hurt.