gpt4 book ai didi

javascript - 您如何称呼混合传统/推送状态应用程序?

转载 作者:行者123 更新时间:2023-12-03 20:28:29 24 4
gpt4 key购买 nike

想知道这种技术在其各种形式中是否有名称...以及人们是否有实现它的任何资源。

假设您有一个页面,非常类似于 github。使用支持 JavaScript 的浏览器,您可以加载

http://www.github.com/username/project

UI and inner content load simultaneously, the pre-AJAX way
- or -
UI wrapper loads, inner content loads via AJAX

它通过 AJAX 加载静态骨架和所有模块。或者,它可以静态加载整个页面。

然后你点击一些导航元素,尝试访问

http://www.github.com/username/project/first_dir

With previously loaded UI
Inner content navigation causes full page refresh
- or -
Inner content navigation causes inner content reload via page refresh
- or -
Completely new page with UI and inner content loads, same as first example

此时我知道可以使用推送状态“访问”此页面并使用 AJAX 刷新内部模块,从而保持站点的整体 chrome 静态。但是,如果出于某种原因不支持 JavaScript 或使用完全刷新加载页面,则页面将完全静态加载(或在框架加载后部分通过 AJAX 加载,如第一个 URL)。

这种技术叫什么?好像是一个统一的模型,打通了服务端的MVC模型和客户端的MVC模型。我知道这可以通过大量的努力来完成,但我想知道是否有人已经研究过这种技术并制定了关于如何在架构上保持两个模型同步的指南。

最佳答案

嗯,我真的不知道这个技术是怎么命名的,但我可以说出我们通常如何在我们的项目中实现类似的行为(基于 MVC 架构)。

重点是使用 View Helpers(或 Partials;不过我们选择了前者)构建整个页面的不同部分。例如,侧边栏由一个 Helper 对象构建,一个表表示一些项目的集合 - 与另一个等。每个 Helper 都可以命名为一种迷你 View ,因为它负责在某些方面表示某些数据非常特别的方式。

这些助手中的每一个都可以作为独立的(然后它的结果将在 AJAX 处理器中使用以刷新页面的某些部分)或作为更复杂过程的一部分(然后它的结果用于布局模板的形式)。

关于javascript - 您如何称呼混合传统/推送状态应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9661065/

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