您能否告诉我Aurelia中的组件和View之间有什么区别? 他们的架构是什么?他们的生命周期有什么区别?
答案 0 :(得分:7)
根据经验,Aurelia中视图与组件之间的差异可归纳为:
从本质上讲,你可以说,Aurelia,你开发的几乎所有东西都是一个'页面'或者可重复使用的元素'可以被视为一个组成部分。这就是Aurelia docs on components means:
组件是所有Aurelia应用程序的基本构建块。
但至少在我看来,目前文档中没有明确描述的是,并非所有组件都是相同的。至少,就他们在Aurelia的生命周期而言。例如,Component Lifecycle具有以下默认挂钩:
此生命周期适用于所有组件。但是有一个细微的差别,当一个组件通过路由器运行(初始化)时,可以使用另外一组钩子:
这是一个通过路由器管道的组件,例如: 通过代码明确导航到的组件,或通过点击等用户操作,在其生命周期中将有其他激活步骤。
如前所述,我个人喜欢将这些组件称为" pages",只是为了给它一个明确的标签,并将它们与例如可重复使用的控件和其他组件区分开来。
答案 1 :(得分:1)
组件只是一个名称,通常用于描述视图和视图模型的配对。视图是HTML文件/模板,视图模型是支持JavaScript文件,尽管绝对可以拥有仅查看组件。
组件可以被视为Web组件,但在Aurelia中,文档描述的内容存在一些差异。 MDN describes Web Components well