首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavascriptMVC应用程序的概念设计

JavascriptMVC应用程序的概念设计
EN

Stack Overflow用户
提问于 2012-02-29 05:04:41
回答 1查看 323关注 0票数 0

我正在建立一个有“页面内容”区域和主要导航链接的一页网站。单击链接运行动画,并将内容(和html)加载到“页面内容”区域。

我对MVC有很好的理解,但是在javascriptMVC框架的上下文中,我在设计我的应用程序时遇到了一些小问题。我将添加大量的JavaScript (和JavaScript动画),因为我前进,所以我想给我的网站一个良好的基础。

  • ,我是否有一个包含我要添加的数据(和html)的固定装置的模型(索引)?
  • ,我是否有一个带有动作的页面(索引)的控制器(动画,然后从固定设备加载数据)?
  • ,我如何将每个链接指向一个动作?

基本上,如何使用javascriptMVC framework从概念上设计页面?

EN

回答 1

Stack Overflow用户

发布于 2012-02-29 05:29:07

实际上,我现在正在为一个为PhoneGap构建的iPhone应用程序做一件非常类似的事情。它是一个一次性页面的javascript应用程序。下面是我使用的基本架构:

  1. 所有页面更改都是用普通的<a href="/stuff/things/"></a>标记完成的。href是一个“有效”的href - "/stuff/things/".
  2. I有一个对象,它将URL映射到控制器。因此,像/recipes/\d+?/这样的东西可以捕获任何url,如/食谱/10/,或/食谱/5/,并调用指定的控制器。
  3. 我将一个事件绑定到文档,该文档检查链接单击情况,并使用各种regexs检查链接的href属性。如果有匹配,则启动一个"pagechange".
  4. The页面交换函数,使用history.pushState()来更改URL,然后将预设的数据对象传递给控制器。该数据对象的一部分是一个匿名的“完全”函数,一旦完成它的工作,控制器本身就会利用它。
  5. 传入“完全”函数的原因通常是页面更改涉及异步活动,例如使用ajax查询数据库。它还允许我们将“页面交换”行为保留在代码的一个部分中,而控制器实际上只构建了一个html块并将其附加到DOM中。此时,控制器将调用传入的完整()函数,而pagechange函数将完成它的工作。

您可以在:http://eatery.decoratelife.net/eatery.js上查看我的整个框架

这不是一个“真正的”MVC。因为我没有真正的模型或观点。视图通过将数据对象与类似于Mustache的字符串合并来处理,模型是通过对远程mongoDB的API调用来完成的。但我认为这说明了一个解决你问题的好方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9493828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档