两端呈现的节点框架

我最近开始学习节点,并试图build立一个应用程序。 我正在阅读关于哪一端最好呈现单页应用程序。

最好在后端渲染,因为初始加载速度更快,而且更好

最好在前端渲染,因为像ember,backbone和angular这样的框架,你可以绑定variables并轻松更新它们,而不用经过DOM过多。

我已经得出结论尝试混合方式(在后台初始化,并在前面更新)。 有没有一些坚实的框架?

  • AirBnB的Rendr主要基于主干和骨干式的deviseselect
  • Artsy的Ezel也是骨干。 博客文章宣布Ezel
  • 来自Nodejitsu的熨斗使用在node.js和浏览器中运行的板模板库
  • Derby在node.js和浏览器中运行

目前为了完整起见 ,我会注意到Meteor和AngularJS目前仅用于浏览器。 我怀疑这两个项目在2014年后期可能会有一些服务器端的渲染选项。

你的假设是正确的,混合方法似乎是一个黄金的方式,因为它将客户端生成的用户界面的优点(抖动,dynamic,离线就绪)与服务器端呈现的用户界面(主要是页面build立速度)的优势结合起来。 这就是为什么Twitter从客户端JavaScript方法迁移回服务器渲染内容的原因[1]。

Ember JS很快就会推出一个名为FastBoot [2]的function,它可以根据你的要求构build一个很好的页面渲染方法。 我不知道有任何内在的支持这个框架。 当然,你总是可以像PhantomJS那样启动一个无头浏览器来在服务器端渲染,但透明地转换到客户端模式是一个未知的领域。

[1] https://blog.twitter.com/2012/improving-performance-on-twittercom

[2] http://emberjs.com/blog/2015/01/08/inside-fastboot-faking-the-dom-in-node.html