1.单页面应用
单页面跳转仅刷新局部资源,公共资源仅加载一次,之后的操作交互,数据交互是通过路由、ajax来进行的,页面本身没有进行刷新。多页面的 跳转需要刷新所有资源(js、css等需要重新加载)
优点:
- 内容的改变不需要重新加载整个页面,速度快,服务器压力小
- 良好的前后端分离:后端API通用化,即同一套后端程序代码,不用修改就可以用于Web界面、手机、平板等多种客户端。
缺点:
- 不利于seo(搜索引擎优化)
- 初次加载耗时较长:会把所有的路由全部加载,并向服务器请求数据。这样必将拖慢加载速度。(解决方法按需加载,懒加载,vue-router)
- 页面的复杂度高
2.前端路由是单页应用的实现方法
好处,其实就是单页面应用的好处。从性能和用户体验的层面来比较的话,后端路由每次访问一个新页面的时候都要向服务器发送请求,然后服务器再响应请求,这个过程肯定会有延迟。而前端路由在访问一个新页面的时候仅仅是变换了一下路径而已,没有了网络延迟,对于用户体验来说会有相当大的提升。