属性与事件绑定回顾
将数据绑定到组件,并从组件绑定事件。
属性与事件绑定回顾 是 CoddyKit 上的免费 Angular Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 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";属性与特性
属性绑定针对的是 DOM 属性,而不是 HTML 特性。对于纯特性,请使用 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) 将操作发送回来,插值则渲染文本。在同一值上组合属性绑定和事件绑定,即可建立双向绑定。
常见问题解答
「属性与事件绑定回顾」课时是免费的吗?
是的 — 「属性与事件绑定回顾」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Angular Academy 课程的其余内容,请升级到 CoddyKit PRO。 Angular Academy 课程共包含 4 节课。
「属性与事件绑定回顾」这节课中我会学到什么?
将数据绑定到组件,并从组件绑定事件。 你通过在浏览器中直接运行的动手代码来练习 Angular Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Angular Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Angular Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「属性与事件绑定回顾」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Angular Academy 课中编写并运行代码吗?
能。每节 Angular Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 属性与事件绑定回顾
- 使用 ngModel 双向绑定
- model() 信号输入
- 自定义双向绑定属性