Javascript模板与服务器模板

时间:2012-05-01 08:21:14

标签: javascript ruby-on-rails extjs server-side template-engine

最近我和一位朋友开始了一个宠物项目,我们讨论了如何构建网站,是让服务器处理模板和数据操作,还是使用像ExtJS这样的JavaScript UI库/ Jquery UI动态呈现小部件,并将服务器用作允许数据流的服务。

什么更好?用于处理UI / Events的JavaScript和后端的所有内容只是数据服务或使用后端框架的传统MVC(最好是ruby)?

用于2个场景的正确/(易于使用)框架是什么。同样在哪个用例中,每个用例都优先于另一个用途。

2 个答案:

答案 0 :(得分:3)

两者都不是更好。每个都有它自己的用途。

对于基本站点界面,您应始终让服务器创建站点的初始结构。因此,这需要服务器端模板。这也适用于那些“如果JS关闭”或“JS不受支持”的人。至少显示该网站的基本形式。不要像Facebook之前那样关闭JS,因为它过于依赖JS,所以关闭JS会留下空白页。

对于通过AJAX获取数据的小部件,动态任务和操作,应该进行客户端模板化。 AJAX是关于异步性和速度的,并且从服务器返回格式化标记太笨重了。这是您使用JSON,缓存模板字符串和使用客户端模板的地方。

答案 1 :(得分:0)

一个想法可能是使用Mustache,它可以在服务器端和客户端呈现。请参阅此博客文章,了解如何在两者之间分享:

http://blog.railsware.com/2012/04/12/shared-mustache-templates-for-rails-3/