nodejs最好用的模板技术就是它的模板字符串了,没有之一。但是作为服务器渲染技术,三年前nodejs还有用模板技术,现在几乎应该没有了吧。
前后端分离是个趋势,在没有seo需求下,采用api+静态资源可以大大减少服务器压力。而nodejs本身作为前端的工具或者玩具,基本上只做api服务器,视图层完全交给浏览器,为此fb甚至点出了graphQL这种科技树。
而如果非要进行服务端渲染,比如强烈的seo需求,很多前端er都会选择使用react或者vue的服务端渲染技术。vue 和 react 的 jsx本质上也是模板,但是它们更多的是前端模板。不过要知道,nodejs也是js,所以他们理所当然的也能在服务端运行。
vue模板或jsx会在服务端里,跟其他语言的模板技术一样,生成html字符串然后通过http发送到客户端。不同的是,与此同时,浏览器加载完之后也会执行一份类似的js脚本,里面的vue模板或jsx完全跟服务端的一模一样,浏览器会把它们构建成页面对象,并把交互事件挂载上去,等待一切就绪后,替换掉之前服务端传输过来的html,客户端脚本全面接管页面视图。
也不知道你能不能想象到,同一份js文件,上一个if里还在服务端手写sql语句做数据库查询,下一个else里就变成了客户端浏览器ajax请求接口了