建议:在JavaScript中使用模型 - 视图 - 控制器挣扎

时间:2013-08-19 22:24:49

标签: javascript model-view-controller view model

我正在努力更好地了解MVC。我找不到太多我真正了解的内容,可以重新设计以更好地理解内部工作原理。

我理解模型是数据(带有对象的JavaScript),View是HTML,控制器是浏览器。

这是正确的理解吗?任何人都可以向我指出MVC的一个非常简单,简单和肮脏的例子吗?

提前感谢任何有用的输入。

2 个答案:

答案 0 :(得分:1)

我建议你在这里研究Backbone JS示例https://github.com/tastejs/todomvc/tree/gh-pages/architecture-examples/backbone

Backbone是您可以找到的最简单的Javascript MVC库(不是框架)。它清楚地定义了什么模型(同步到REST API的数据),View(这有点令人困惑,因为Backbone中的View plus Router等于MVC世界中的“Controller”)和Template(这是“视图”中的MVC世界。你可以使用Mustache JS或下划线JS或其他模板引擎)。

我希望这会有所帮助。

答案 1 :(得分:1)

MVC框架包括以下组件:

  • <强>模型即可。模型对象是实现的应用程序的一部分 应用程序数据域的逻辑。通常,模型对象 检索并存储数据库中的模型状态。例如,产品 object可以从数据库中检索信息,对其进行操作,以及 然后将更新的信息写回SQL中的Products表 服务器数据库。在小型应用程序中,模型通常是概念上的分离 而不是物理的。例如,如果应用程序仅读取 数据集并将其发送到视图,应用程序没有 物理模型层和相关类。在那种情况下, dataset承担模型对象的角色。

  • <强>视图即可。视图是显示应用程序的组件 用户界面(UI)。通常,此UI是从模型创建的 数据。一个例子是Products表的编辑视图 显示文本框,下拉列表和基于的复选框 Product对象的当前状态。

  • <强>控制器即可。控制器是处理用户的组件 交互,使用模型,最终选择一个视图 渲染显示UI。在MVC应用程序中,仅视图 显示信息;控制器处理并响应用户 输入和互动。例如,控制器处理 查询字符串值,并将这些值传递给模型,该模型在 turn可能会使用这些值来查询数据库。

http://msdn.microsoft.com/en-us/library/dd381412(VS.98).aspx?ppud=4