【问题标题】:MVC architecture for front-end [closed]前端的 MVC 架构 [关闭]
【发布时间】:2010-12-28 11:17:40
【问题描述】:

我正在用 PHP(+ MySQL 数据库)编写应用程序,但主要是 AJAX 应用程序。所以,我想知道,如何创建前端?前端也在MVC中?有可能吗?

【问题讨论】:

  • 你的意思是如何将前端与应用程序的其余部分分开?如果是这样,我建议使用模板引擎。这是你的意思吗?
  • 如果您决定使用完整的 AJAX 前端,您可以查看 JavaScript 参考架构 boilerplatejs.org。它可以与任何 MVC 库一起使用,例如 Backbone 或 Knockout。

标签: php javascript ajax model-view-controller


【解决方案1】:

当然,前端也可以使用 MVC。 JavaScript 是一种丰富的编程语言,由于 MVC 只是一种设计架构,因此它与语言无关。在一些JS框架中有一些MVC的尝试,主要是sproutcoreJavaScriptMVC

我想有两条路可以走,要么完全分离 PHP 和前端,然后在它们之间传递带有 ajax 的 JSON 或 XML,或者像经典的 Web 应用程序一样混合它们,并在此基础上执行一些 ajax 请求。

【讨论】:

    【解决方案2】:

    不幸的是,依赖启用 JavaScript 仍然不是一个好主意,因此最好让 JavaScript 应用程序优雅地“失败”。

    我建议首先创建一个基本的 PHP/HTML 单击并重新加载应用程序,这将允许恐龙使用网站的基本功能,然后在此基础上构建一个 JavaScript/AJAX 应用程序,这将增强基础应用程序。

    关于 MVC 问题:创建 JavaScript MVC 前端是绝对可能的。几个月前我自己尝试过,效果很好。只需密切关注函数调用的范围。如果您不小心,他们可能会远离您:-P

    【讨论】:

    • 对于许多应用程序,要求用户启用 javascript 是完全可以接受的。例如。如果禁用 JS,Google Docs 电子表格将如何工作?
    • @rjmunro Google Docs 是一个例外,因为它的创建是为了替换通常为桌面应用程序保留的功能,并且不能合理地仅在 HTML 中复制。它几乎无法与 99% 的网站相比。 - 但我同意,要求它是“可以接受的”,但仍然不是“首选”。例如,许多手机很难使用为桌面浏览器构建的 JS。 -- 归根结底,如果你想接触到最大的受众,优雅地回归到最常见的标准(纯 HTML,用于网络)是“理想的”,我会(仍然)始终建议这样做。
    【解决方案3】:

    如果需要,您可以使用 AngularJS(AngularJS 是 JavaScript 的 MVC 框架)。

    【讨论】:

      猜你喜欢
      • 2011-10-23
      • 2019-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-26
      • 2023-03-10
      • 1970-01-01
      • 2011-04-12
      相关资源
      最近更新 更多