(盗图镇楼)
多页应用
每一次页面跳转的时候,后台服务器都会返回一个新的html文档,这种类型的网站就是多页网站,也叫多页应用。{页面跳转——>返回html}
优点是:首屏时间快,seo效果好;缺点是:页面切换慢;
为什么多页应用的首屏时间快?
首屏时间叫做页面首个屏幕的内容展现时间,当我们访问页面的时候,服务器返回一个html,页面就会展示出来,这个过程只经历了一个http的请求,所以页面的展示速度非常的快。
为什么搜素引擎的优化效果好(seo)?
搜索引擎在做网页排名的时候,要根据网页的内容才给网页的权重,根据权重的大小来进行网页的排名。搜索引擎可以识别html的内容,而我们每个页面的内容都放在html中,所以多页的应用,seo的排名效果好。
多页应用没有缺点吗?
有!多页应用的每次跳转都需要发出一个html请求,如果网络比较慢,在页面之间来回的切换时,就会发生明显的卡顿。就是切换慢。
单页面应用
第一次进入页面的时候会请求一个html文件,刷新点击一下会切换到其他组件,此时路径也相应的变化,但是并没有新的html文件的请求,页面内容发生变化。原理是:
js会感知到url的变化,通过这一点,可以用js动态的将当前的页面内容清除掉,然后将下一个页面的内容挂载到当前的页面上。这个时候路由不是后端来做了,而是前端来做,判断页面到底是显示那个组件,清楚不需要的,显示需要的组件。这种过程就是单页应用,每次跳转不请求html文件了。{页面跳转——>js渲染}
优点是:页面切换快;缺点是:首屏时间稍慢,SEO差;(请与单页面应用优缺点对比理解)
为什么页面切换快?
页面每次切换跳转时,并不需要做html
文件的请求,这样就节约了很多http
发送时延,我们在切换页面的时候速度很快。
缺点:首屏时间慢,SEO差
单页应用的首屏时间慢,首屏时需要请求一次html
,同时还要发送一次js
请求,两次请求回来了,首屏才会展示出来。相对于多页应用,首屏时间慢。
SEO效果差,因为搜索引擎只认识html
里的内容,不认识js
的内容,而单页应用的内容都是靠js
渲染生成出来的,搜索引擎不识别这部分内容,也就不会给一个好的排名,会导致单页应用做出来的网页在百度和谷歌上的排名差。
后话:
vue开发单页面应用,有这些缺点,为什么还要使用vue呢?
实际上单页面应用对于前端来说是非常完美的页面开发解决方案,并且vue提供了服务器渲染技术(SSR),通过这些技术可以完美的解决这些问题;
单页应用改多页面应用??
单页改造成多页。我个人觉得,改造成多页还是得看具体情况,就像我之前公司有3个项目,这3个部分功能一致,部分又有区别,之前就是分成3套代码来维护,有的时候一改就比较麻烦,所以改造成多页应用了;