Aurelia - 组件
组件是 Aurelia 框架的主要构建块。在本章中,您将学习如何创建简单的组件。
简单组件
如上一章所述,每个组件都包含用 JavaScript 编写的 view-model 和用 HTML 编写的 view。您可以看到以下 view-model 定义。这是一个 ES6 示例,但您也可以使用 TypeScript。
app.js
export class MyComponent { header = "This is Header"; content = "This is content"; }
我们可以将值绑定到视图,如以下示例所示。${header语法将绑定来自MyComponent的已定义header值。相同的概念适用于content。
app.html
<template> <h1>${header}</h1> <p>${content}</p> </template>
上述代码将产生以下输出。
组件函数
如果您想在用户单击按钮时更新页眉和页脚,可以使用以下示例。这次我们在 EC6 类构造函数中定义 header 和 footer。
app.js
export class App{ constructor() { this.header = 'This is Header'; this.content = 'This is content'; } updateContent() { this.header = 'This is NEW header...' this.content = 'This is NEW content...'; } }
我们可以添加 click.delegate() 来将 updateContent() 函数与按钮连接起来。更多内容请见后续章节。
app.html
<template> <h1>${header}</h1> <p>${content}</p> <button click.delegate = "updateContent()">Update Content</button> </template>
单击按钮时,标题和内容将更新。