gpt4 book ai didi

model-view-controller - pjax 还是客户端 MVC?

转载 作者:行者123 更新时间:2023-12-04 02:45:45 25 4
gpt4 key购买 nike

我必须开始一个新项目,一个有很多表单和屏幕的网络应用程序,我真的不知道哪种技术最适合。该应用程序是一个类似于 ERP 的应用程序,动画很少,表格很多。目标是减少重新加载和等待时间,它必须尽可能接近普通桌面应用程序(看起来像一个了不起的 VB6 应用程序需要做很多工作:-)

一方面,我们有客户端 MVC( Backbone )。让所有代码在客户端上运行很酷,但在我看来,这意味着从服务器(PHP + Fuel)重复大量代码(例如所有模型定义)。当然一旦加载了所有信息任务,如分页或网格工作,没有任何延迟,但它也存在一些同步问题(其他用户可以更改数据,我必须手动使客户端上的数据无效)。

另一方面,我们有 pjax。这个想法是在服务器上制作所有的模板等,只需实现一个逻辑来返回没有pjax请求框架的页面或新请求的完整页面。没有代码重复,非常简单的客户端。

我读过这个故事from basecampfrom twitter这两点对我来说都很有意义。您不能在访客计算机上进行中继(功能、性能......)

我想得越多,我喜欢 pjax 而不是 MVC 的模式,但也许我错过了一些东西。与客户端 MVC 相比,与 pjax 或 pjax 相比,MVC 有哪些优势?

非常感谢

最佳答案

Backbone.js 适用于那些从不真正回传但有很多 ajaxian 事情发生、相互依赖的级联下拉列表等的重型单页 Web 应用程序。它有一个非常好的事件和集合 API。如果您有丰富的客户端 javascript,那么它可能是一种组织它的有用方式。从某种意义上说,它希望您的服务器端架构默认为 RESTful,并且您必须付出一些努力才能将其用于非 RESTful API。

我正在处理的项目也是一个 ERP Web 应用程序,在服务器端使用 asp.net MVC。我了解到 Backbone(使用 Handlebars 作为模板系统)和 .net mvc 确实不能很好地协同工作。如果你去 Backbone,你真的必须全力以赴( Controller 方法提供 json,就是这样)。在这个应用程序中或多或少是带有某些表单的“正常”网页的页面上,Backbone 是错误的选择。

我只是第一次在谷歌上搜索 pjax,所以我基本上只是阅读了页面顶部的简短描述,但我怀疑这可能是你的场景的方式,符合 Keep It Simple Silly 原则。

关于model-view-controller - pjax 还是客户端 MVC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12343962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com