【发布时间】:2016-08-25 08:06:16
【问题描述】:
Angular 1.x (AngularJS) 或多或少遵循 MV* 设计原则,因为它具有双向数据绑定功能。
Angular2 正在采用基于组件的 UI,这是 React 开发人员可能熟悉的概念。从某种意义上说,Angular 1.x 控制器和指令模糊为新的 Angular 2 组件。
这意味着在 Angular 2 中没有控制器和指令。取而代之的是,组件有一个选择器,该选择器对应于该组件将表示的 html 标记和一个 @View,用于指定要填充的组件的 HTML 模板。
Angular2 仍然实现双向数据绑定,但不包含模型,例如,如果我有一个显示文章列表的 @Component 和一个定义文章对象的 class:
class Article {
title: string;
link: string;
votes: number;
constructor(title: string, link: string, votes?: number){
this.title = title;
this.link = link;
this.votes = votes || 0;
}
这在 MVC 模式中将被视为模型。
那么考虑到这一点,Angular 最接近哪种设计模式?
【问题讨论】:
标签: angular model-view-controller design-patterns mvvm mv