【问题标题】:simple ajax mvc type structure简单的ajax mvc类型结构
【发布时间】:2010-11-03 18:14:47
【问题描述】:

您如何设计/构建一个完全 ajaxed MVCish 风格的网站?我想最让我困惑的是,只有一种视图可以适应和改变用户操作......

我希望构建一个非常简单的应用程序,前端和后端都采用这种风格。

【问题讨论】:

  • 只有一个视图?我认为这是您正在采取的危险路线(没有 MVC 双关语)
  • 我想我的意思是一个容器视图,其他视图被加载到其中

标签: php jquery ajax model-view-controller


【解决方案1】:

是的,您将构建一个“前端控制器”,将视图(可能不止一个)路由到页面以在 div 中呈现。我的公司用它的两个应用程序来做到这一点,它速度极快,是一个简单的应用程序的好方法......用户喜欢它。成功的关键是具有良好定义的 div 以接收内容的良好布局。由于您将反复写入和重写它们,因此您必须提前确保它们能够处理各种大小和数量的数据,因为您几乎没有办法在整个容器上影响每页的布局....除了事后的黑客攻击(只是说不!)

与控制器、模型和视图(前端视图代码)一样,在某些情况下,我们的代码将使用中间页面(我们称之为中间模型)以 JSON 字符串格式生成 Jquery 数据.在这种情况下,它不完全是一个模型,因为它像模型一样采取行动,但有时根据 Jquery 元素的需要返回的不仅仅是 JSON。

这个系统的一个有趣的分支是使用一个名为XAJAX 的程序。它是一个 PHP 库,可促进直接调用 PHP 函数的 AJAX,因此它消除了像 Jquery 使用的那样生成中间 JSON 页面的需要。对于那些了解 PHP 但使用 Javascript 的人来说,这可能是一个更容易掌握的解决方案。虽然文档并没有被证明非常强大,但它是一个非常强大的工具。

【讨论】:

  • 非常感谢您的建议,它真的帮助我思考这个问题。你的应用是公开的吗?如果是这样,希望看到它们在行动中...... XAJAX 看起来很有趣,虽然我对 PHP 很陌生并且更习惯于 JS。
  • 广泛使用 XAJAX 和这种方法的应用程序都受到保护(它们为银行的 CRM 和几家大公司的营销系统提供动力)但您可以在我为摄影师朋友做的网站上看到非常基础的内容cakesandkisses.com/gallery_detail.php?id=843# 让我证明我没有在那个网站上做 UI,但我确实构建了当你点击右下角的图标时翻转照片的代码,它使用这种方法和专门的 XAJAX。跨度>
【解决方案2】:

我会照常处理您的所有视图(除了它们只是将插入页面的 HTML 片段),然后有一个额外的“特殊”控制器和视图,通过 Ajax 加载您的视图。当单击链接或类似的东西时,JavaScript 会向具有您要加载的视图的特殊控制器发出 Ajax 请求。特殊控制器然后呈现视图并将其发送回以插入到页面中。

【讨论】:

    猜你喜欢
    • 2011-08-31
    • 1970-01-01
    • 1970-01-01
    • 2015-05-07
    • 2021-12-15
    • 1970-01-01
    • 2010-11-18
    • 2016-11-09
    • 2012-11-25
    相关资源
    最近更新 更多