单页应用(SPA)是一种网站设计方法,其中每个新页面的内容不是通过加载一个新的HTML页面来提供的,而是由JavaScript操作现有页面上的DOM元素动态生成的。
在更传统的web页面架构中,index.html页面可能链接到服务器上的其他html页面,浏览器将从头开始下载并显示这些页面。
SPA方法允许用户在更新或获取新元素时继续使用页面并与之交互,并且可以导致更快的交互和内容重载。此外,HTML5历史API允许我们在不重新加载页面的情况下更改页面的URL,从而允许我们为不同的视图创建单独的URL。
一旦进入SPA,应用程序就可以通过AJAX请求或WebSocket从服务器动态获取内容。这允许浏览器在后台向服务器请求附加内容或新“页面”时保持当前页面打开。
如果您曾经启动过一个搜索查询,并且在您键入时中间结果显示在输入表单的下方,那么您已经看到了在更新这些DOM元素的背景中发生的动态查询。事实上,服务器查询可以获得任何类型的数据,通常以JSON有效负载、字符串甚至HTML元素的形式呈现。
什么时候用单页应用,什么时候不用?
什么时候应该考虑使用单页应用程序?
首先,如果你想要用户和应用之间丰富的交互,那么SPA几乎是必不可少的。第二,如果想在页面上提供实时更新,肯定需要使用这种方法;通知、数据流和实时图表需要此方法。
应该避免使用SPA吗?
如果你的内容是纯静态的,那么SPA的引入会缩短用户的加载时间,需要用户下载并执行JavaScript load才能查看任何内容。然后,只需根据请求显示静态HTML内容,就可以提高使用较旧浏览器或较慢互联网连接的用户的可访问性。最后,如果机器人程序无法查看任何标题或内容,无法显示任何HTML内容可能会损害SEO排名。
上面讨论的服务器端呈现方法可以改善加载时间,并为没有启用JavaScript的用户提供一些基本的可读性。建议至少给没有启用JavaScript的用户提供内容的基本功能,让他们有机会根据最初页面加载看到的内容决定启用JavaScript。
本文来自语死早数已亡投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/499003.html