找回密码
 快速注册
搜索
查看: 37|回复: 0

单页应用(SPA) 和 同构页面

[复制链接]

3147

主题

8381

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65357
QQ

显示全部楼层

hbghlyj 发表于 2022-8-10 07:59 |阅读模式
zh.wikipedia.org/wiki/单页应用
单页应用(英語:single-page application,缩写SPA)是一种网络应用程序或網站的模型,它通过动态重写当前页面来与用户交互,而非传统的从服务器重新加载整个新页面。这种方法避免了页面之间切换打断用户体验,使应用程序更像一个桌面应用程序。在单页应用中,所有必要的代码(HTML、JavaScript和CSS)都通过单个页面的加载而检索,或者依需(通常是为响应用户操作)動態裝載适当的资源并添加到页面。尽管可以用位置散列或HTML5历史API来提供应用程序中单独逻辑页面的感知和导航能力,但页面在过程中的任何时间点都不会重新加载,也不会将控制转移到其他页面。与单页应用的交互通常涉及到与網頁伺服器后端的动态通信。


en.wikipedia.org/wiki/Isomorphic_JavaScript

Facebook 就是这样工作的。后端代码推出处理用户交互的 JavaScript 代码。它使网页非常快速。当您查看 Facebook 并单击某些内容时,您会注意到同构页面:它不会重写浏览器中的地址栏

这意味着它用仅获取已更改内容的站点内逻辑替换了URL传送的 GET 和 POST 请求。整个页面基本上是 JavaScript。查看 Facebook 代码,您会发现几乎整个页面都是 JavaScript。

用户需要速度与连贯性。当他们更换新的标签页时,载入页面的延迟成为了人们关闭标签的理由。

Isomorphic JavaScript: The Future of Web Apps
Why Everyone is Talking About Isomorphic / Universal JavaScript and Why it Matters

比如DiscuzX的forumdisplay(帖子列表)页是一种比较基本的同构页面:点击“下一页”后,并不会重写地址栏,而是用ajax获取新的内容并加入到下面。
翻页.gif

手机版|悠闲数学娱乐论坛(第3版)

GMT+8, 2025-3-4 19:30

Powered by Discuz!

× 快速回复 返回顶部 返回列表