SPA 单页面将所有的活动局限于一个 Web 页面中,仅在该 Web 页面初始化时加 载相应的 HTML、JavaScript 和 CSS。一旦页面加载完成了,SPA 不会因为用户 的操作而进行页面的重新加载或跳转。取而代之的是利用 路由机制 实现 HTML 内容的变换,UI 与用户的交互,避免页面的重新加载。
我认为他们的优点有三条:
-
用户体验好、快,内容的改变不需要重新加载整个页面,避免了不必要的跳转和重复渲染
-
SPA 相对对服务器压力小
-
前后端分离,架构清晰,前端进行交互逻辑,后端负责数据处理
我认为他们的缺点有三条:
-
不利于seo
-
初次加载时耗时多, 为实现单页 Web 应用功能及显示效果,需要在加载页面的时候将 JavaScript、CSS 统一加载
-
由于单页应用在一个页面中显示所有的内容,所以不能使用浏览器的前进后退功能