Web项目中多页应用和单页应用的比较
传统的web应用前端开发中,往往是基于多页应用进行的,最近在研究前端主流技术Vue,了解到Vue是单页应用,对二者的异同做了简单的笔记。
比较 | 多页应用(Mutiple Page Application) | 单页应用(Single Page Application) |
HTML页面 | 项目中有多个完整的HTML页面 | 整个项目中只有一个完整的HTML页面;其他HTML文件都是组件或者的集合 |
跳转 | 使用超链接、JS实现页面跳转 | 使用超链接、JS实现“伪跳转” |
页面切换 | 所有页面请求都是同步的:客户端在等待服务器给相应的时候,浏览器中一片空白 | 所有的“伪页面请求”都是异步请求:客户端在等待下一个页面片段到来时,仍可以显示前一个页面内容——浏览器体验更好 |
动画 | 不便于实现两个页面间切换过程动画 | 很容易实现两个伪页面间的过场切换动画 |
DOM树 | 浏览器需要不停的创建完整的DOM树,删除完整的DOM树(若要详细了解可以查阅“浏览器对html标签的处理过程”) | 浏览器只需要创建一个完整的DOM树,此后的伪页面切换其实只是在换某个div中的内容(vue对于页面的处理是基于html中的div标签的) |
CSS、JS文件 | 每个页面都需要加载自己的CSS和JS文件 | 整个项目的CSS和JS文件只需要加载一次 |