【发布时间】:2016-06-16 05:00:34
【问题描述】:
我曾在 Angular 1 中工作过。它显然有一个控制器充当视图和模型之间的中介。我意识到在 Angular 2 中我们没有这样的控制器。
那么我们仍然可以将 Angular 2 称为 MVC 框架吗?我知道 MVC 是一种设计模式,你可以用任何语言实现它。但是,关于 Angular 1,我听很多人说它是一个 MVC 框架,而且我看到的大多数例子都清楚地说 Angular 1 是 MVC,Controller 将 Model 与 View 分开。所以,我想知道,既然 Angular2 中有组件,我们还能称它为 MVC 吗?或者作为组件本身遵循 MVC 范式,因为我确实看到在每个组件中我们将视图和数据分开并使用绑定,也许我们仍然可以将其称为 MVC。
【问题讨论】:
-
并不是说这有多大帮助,但我认为它被称为 MV*(或 MVWhatever)框架,因此您对如何实现最后一部分有一定的许可。
-
angular2 文档对架构有很好的概述。可以在这里找到:angular.io/docs/ts/latest/guide/architecture.html。尽管 Angular2 是基于组件的,但您仍然拥有单独的视图、单独的视图范围以及允许您连接到后端的服务。
-
我肯定会考虑 Angular2 MVC。服务是你的模型,组件是控制器和视图的混合体。您将大部分功能逻辑和“控制器”功能放在您的类中,并通过模板将您的视图附加到它。
-
@Morgan G Services 绝对不是模型。在所有 MVC 相关框架(包括 MVVM 等)中,您有 2 个模型。第一个是领域模型。第二个是使领域模型适应视图的模型。在 MVVM 中,这是 ViewModel。很多人也开始在直接的 MVC 中使用 ViewModel 这个术语。
标签: angular