【问题标题】:What specifically is the Model, View, and the Controller in a MEAN Stack app?MEAN Stack 应用程序中的模型、视图和控制器具体是什么?
【发布时间】:2017-02-12 02:10:16
【问题描述】:

所以我一直在阅读/查看有关 MVC 的各种教程。我最熟悉构建 MEAN 堆栈应用程序,但现在对我认为 MVC 的工作方式有点困惑。

根据我对 MEAN 堆栈应用程序的理解,MVC 类似于:视图是 HTML/CSS,模型是 JavaScript(存储对象的数据和逻辑),控制器包括控制器、工厂和服务? (这是我最困惑的地方)。但后来我看到一个教程,解释整个客户端是视图,服务器是控制器,数据库是模型。

这是否意味着 MVC 模式可以应用于应用程序的前端和后端?如果是这样,那么 MEAN 堆栈应用程序有两个 MVC?

【问题讨论】:

  • 是的,有两个,因为 Angular 有自己的 MVC 架构
  • @cricket_007 谢谢。您能否解释一下客户端脚本如何在 MEAN 堆栈应用程序中实现 MVC?是我们如何在控制器中注入我们的工厂和服务的示例吗?
  • Angular 是客户端。你是说服务器端?服务器上没有真正的视图
  • 那么你回答的时候怎么会有两个 MVC?你的意思是 Angular 有一个 MVC 并且服务器端可以有一个 MVC 结构,没有视图? @cricket_007
  • 我想你可以说 Express 有“视图”,但我对它们的定义更接近于“控制器”。 Mongo 并不真正需要“模型”,但您可以定义一些,它们将是纯 JavaScript,而不是任何特定于 Node.js、Express 或 Angular 的东西。

标签: model-view-controller mean-stack client-side server-side


【解决方案1】:

据我了解,通常 MVC 模式只适用于应用程序的前端。

也许这个网站可以帮助你更多:https://evincedev.com/blog/mean-stack-architecture/

【讨论】:

    【解决方案2】:

    Angular 没有 MVC 架构。它遵循 MVVM(模型视图视图模型)架构。通常在 MVC 中,数据库充当模型,服务器充当控制器,前端是视图。

    在 Angular Controller 中被 ViewModel 取代。 ViewModel 充当视图和模型之间的连接。 View 写在 html 文件中,Model 通常写在 Services 中,ViewModel 写在 Controllers 中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-01
      • 2012-01-12
      • 1970-01-01
      • 1970-01-01
      • 2015-07-21
      • 2023-03-03
      • 1970-01-01
      相关资源
      最近更新 更多