模板引擎:客户端还是服务器端?
发布于 11 年前 作者 ericwoo 11399 次浏览 最后一次编辑是 8 年前

模板引擎 (Template Engine)是Web开发中将展现层和数据分离的一项技术。模板引擎根据一定的语义,将数据填充到模板中,产生最终的HTML页面。模板引擎渲染的位置可分为客户端和服务器端。

服务器端渲染:模板引擎在服务器端将模板和数据合成,返回最终的HTML页面

  • 客户端渲染通常使用JavaScript脚本,如果某些客户端不支持JavaScript,就需要在服务器端渲染;
  • 搜索引擎通常不执行JavaScript脚本,要做到SEO友好,就必须实现服务器端渲染;

客户端渲染:将模板和数据分别传送到客户端,在客户端由JavaScript模板引擎渲染出最终的HTML视图。

  • 可以对模板文件(相对静态)进行缓存和负载平衡,对于流量很大的公众站点非常有价值;
  • 由于将模板渲染的计算转移到客户端,可降低服务器负荷;
  • 如果一个前端页面的内容分别来自多个后台系统,而这些后台的架构各不相同(Java、.NET、Ruby等),则服务器端渲染需要采用不同的技术,模板资源无法共享。客户端渲染则不存在这个问题,不同的后台系统可采用相同的客户端渲染技术,这样互相之间的模板资源可以公用,前端页面的整合非常容易;
4 回复

我的感觉是能在服务器端渲染模板,就不在客户端做。数据更安全些。

不执行js,seo不友好这是讹传,google一样抓,只是天朝的百毒对象angularjs做的这种站直接封杀,技术都是向前进步的,很多自己写的爬虫都可以执行js脚本,更不用说搜索引擎了

感觉客户端渲染是势头,只是目前服务端渲染技术更成熟。

回到顶部