2013-11-21 40 views
0

我已经创建了一个Web应用程序就像这样:我们一步一步地移动,在每一步我们查询用户关于Data div中显示的数据, ajax调用并以JSON格式获取数据并用html内容填充新Div。 所以,就这样走第1步:我们用绿色给步骤1做一个ajax调用,得到step1的数据,形成数据div的html内容,然后根据数据向用户提问,然后在用户的响应之后,我们移动到第2步,3步,然后第4步,JS与MVC(模型视图控制器)体系结构

Collect User Input Based On Data

我想重写与MVC模式,这是我以前从来没有写的,JS代码可以有人提出一个很好的设计(什么模式应该有,控制器和视图),或者指示我已经使用MVC架构编写的一些JS示例。 用户可以随时回到任何步骤并通过单击步骤块再次查看其数据。 在此先感谢。

回答

1

MVC是一种设计模式,用于帮助您保持独立和结构化的代码,使每个部分都有特定的职责。模型负责数据,UI的呈现和控制器负责用户交互。现在解释是要用一粒盐让控制器和视图在每个MVC设计中都有不同的实现,您可以看看,但这是一个一般的解释。

有一点需要注意的是,MVC设计模式有几个变种,比如MVP和MVVM,还有更多,你可能会看到人们称之为MV *。星号是实现中设计模式的实现可能会有所不同的地方。最主要的是他们都试图解决同样的基本问题,但“MVC”可能略有不同,特别是当您开始在客户端与服务器端研究MVC时。

有许多js框架实现MVC像设计模式,骨干,敲除,角和Ember等仅举几例。您可以选择使用其中的一种,或者您可以为学术目的而手动编写自己的文章。

我会建议谷歌“TodoMVC”,并去那个网站。它有一个很长的框架列表,你可以看到他们在每个框架中如何开发这个todo应用程序。通过查看每个你可以看到你喜欢的框架语法并尝试它。

我使用ember.js,但我不会说“哦,使用烬它是最好的”看看周围尝试它们,因为你会从每一个学习的东西。我会说,虽然骨干,Angular和Ember有大型社区和许多资源供您使用。

Angle和Ember网站都做了很好的工作,让你通过构建一个应用程序来让你滚动和有很好的文档。如果您想要手动滚动或者更好地了解MVC与客户的关系以及各种框架如何接近解决方案。我建议阅读Alex MacCaw的“Javascript web应用程序”,这很不错。

嗯,希望这有助于当你有一些代码发布,并有人在堆栈溢出将能够提供帮助。但这是一个让你到达的起点。