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>

上述代码将产生以下输出。

Aurelia Components Simple

组件函数

如果您想在用户单击按钮时更新页眉和页脚,可以使用以下示例。这次我们在 EC6 类构造函数中定义 headerfooter

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>

单击按钮时,标题和内容将更新。

Aurelia 组件方法