속성 및 이벤트 바인딩 복습
컴포넌트로 데이터를 전달하고 컴포넌트에서 이벤트를 전달합니다.
속성 및 이벤트 바인딩 복습은(는) CoddyKit의 무료 Angular Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Angular Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Angular Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
두 가지 데이터 흐름 방향
Angular 템플릿에서는 두 방향으로 데이터를 전달합니다. 속성 바인딩은 DOM으로 데이터를 보내고, 이벤트 바인딩은 사용자의 동작을 컴포넌트로 전달합니다.
보간
중괄호 두 개를 사용하는 보간은 컴포넌트 값을 텍스트로 표시합니다. 컴포넌트에서 뷰로만 전달되는 단방향 방식입니다.
<p>{{ title }}</p>
// component
title = "Dashboard";속성 바인딩 구문
대괄호를 사용하면 컴포넌트 값을 요소 또는 컴포넌트의 속성에 바인딩할 수 있습니다. 오른쪽의 표현식이 평가된 후 할당됩니다.
<img [src]="imageUrl" [alt]="caption">
// component
imageUrl = "/logo.png";
caption = "Logo";컴포넌트 입력에 바인딩하기
속성 바인딩은 자식 컴포넌트의 @Input 속성에도 값을 전달합니다.
<app-user [name]="userName"></app-user>
// parent component
userName = "Ada";특성과 속성 비교
속성 바인딩은 HTML 특성이 아니라 DOM 속성을 대상으로 합니다. 특성 자체를 사용하려면 attr. 접두사를 사용하세요.
<button [attr.aria-label]="label">Save</button>이벤트 바인딩 구문
괄호를 사용하면 DOM 이벤트를 컴포넌트 메서드에 바인딩할 수 있습니다. 이벤트가 발생하면 해당 메서드가 실행됩니다.
<button (click)="save()">Save</button>
// component
save() { console.log("saved"); }$event 객체
특수한 $event 변수는 이벤트 데이터를 이벤트 처리기로 전달합니다.
<input (input)="onInput($event)">
// component
onInput(e: Event) {
this.text = (e.target as HTMLInputElement).value;
}컴포넌트 출력에 바인딩하기
이벤트 바인딩은 EventEmitter를 통해 발생한 자식 컴포넌트의 @Output 이벤트도 수신합니다.
<app-counter (changed)="onChange($event)"></app-counter>
// parent
onChange(value: number) { this.count = value; }두 바인딩 결합하기
같은 속성에 속성 바인딩과 이벤트 바인딩을 함께 사용하면 양방향 바인딩의 기반이 됩니다. 다음에서 이를 살펴보겠습니다.
<input [value]="name" (input)="name = $event.target.value">클래스 및 스타일 바인딩
특수한 속성 바인딩을 사용하면 컴포넌트 상태에 따라 클래스와 스타일을 전환할 수 있습니다.
<div [class.active]="isActive"
[style.color]="textColor">
Item
</div>선언적으로 템플릿 유지하기
바인딩을 사용하면 데이터와 뷰의 관계를 선언적으로 유지할 수 있습니다. 바인딩된 값이 변경되면 Angular가 DOM을 자동으로 업데이트합니다.
빠른 확인
속성 바인딩과 이벤트 바인딩에 대한 이해도를 확인해 보세요.
복습
속성 바인딩 [prop]은 데이터를 뷰로 보내고, 이벤트 바인딩 (event)은 동작을 다시 전달하며, 보간은 텍스트를 표시합니다. 같은 값에 속성 바인딩과 이벤트 바인딩을 결합하면 양방향 바인딩을 설정할 수 있습니다.
자주 묻는 질문
“속성 및 이벤트 바인딩 복습” 강의는 무료인가요?
네 — “속성 및 이벤트 바인딩 복습” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Angular Academy 강의 전체를 잠금 해제할 수 있습니다. Angular Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“속성 및 이벤트 바인딩 복습”에서 뭘 배우나요?
컴포넌트로 데이터를 전달하고 컴포넌트에서 이벤트를 전달합니다. 브라우저에서 직접 실행하는 실습 코드로 Angular Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Angular Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Angular Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“속성 및 이벤트 바인딩 복습” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Angular Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Angular Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 속성 및 이벤트 바인딩 복습
- ngModel을 사용한 양방향 바인딩
- model() 시그널 입력
- 사용자 지정 양방향 바인딩 속성