客户端渲染和服务端渲染

156 阅读2分钟

知识本身并不难理解,由面试时初次接触,遂有感而学习分享。涉及到服务端渲染和模板引擎的知识。

客户端渲染和服务端渲染

概括性的解释就是:客户端渲染就是js对html文档结构的修改替换在浏览器端进行完成,最终得到展示出来的html结构。服务端渲染就是在服务端也就是后台,我们将html文档提前进行处理,代替浏览器完成替换文本展示信息等业务逻辑操作,最终再发给浏览器简单渲染一下展示出来。

image.png

客户端渲染

我们常见的还是客户端渲染的模式,也就是html文档直接从服务端拿到后,根据引用的js文件在浏览器中完成各种html结构处理操作,服务器只负责响应客户端对于html以及js等资源的请求

目前来说客户端渲染是主流,这种设计模式完全胜任日常的开发以及使用体验。

服务端渲染

服务端渲染将浏览器的工作接手,由后台负责响应给客户端最终的html结构,其中的实现很大程度上依靠模板引擎

模板引擎:可以理解成为一个函数一个方案,对html文档的处理操作。最最最基础的就是字符的拼接操作,通过拼接我们将需要渲染的数据和替换的内容放置到设计好的一个html结构中,从而达到复用的效果。而模板引擎就是封装这个步骤的,封装基于模板字符串的操作代码,我们需要传入渲染的数据。

依靠模板引擎的设计和实现,我们可以在后台将拿到的数据立即渲染到我们html结构中,这样我们响应到客户端时,浏览器需要执行的用js渲染html结构的操作便大大减少甚至不需要了

服务端渲染是利用了模板的思想,分担了浏览器的部分”渲染“任务,虽然减少了浏览器的消耗和耗时,但是相反的会增加服务端的消耗。

作为一种渲染方案,本身没有好坏,目前来看服务端渲染是比较少见的。