2012-05-01 93 views
2

最近我正要和一位朋友一起开始一个宠物项目,我们讨论了如何构建网站,是否让服务器负责模板和数据操作,或者使用一些JavaScript UI库(如ExtJS/Jquery UI)动态呈现小部件,并将服务器用作允许数据流的服务。Javascript模板与服务器模板

有什么更好? JavaScript来处理UI/Events以及前端的所有事情,只有后端才是数据服务,或者使用后端框架(最好是ruby)的传统MVC?

什么是正确/(易于使用)框架用于2场景。另外在哪个用例中每个都比另一个更受欢迎。

回答

3

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

对于基本站点接口,应始终让服务器创建站点的初始结构。因此,这需要服务器端模板。这也适用于那些“如果JS关闭”或“JS不支持”的情况。至少有一个基本的网站形式出现。不要像之前的Facebook一样,关闭JS会留下空白页面,因为它太依赖JS了。

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

0

一个想法可能是使用Mustache,它可以在服务器端和客户端都呈现。看到这个博客帖子如何在两者之间分享:

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

+0

也有波洛:https://github.com/olivernn/poirot,有在这里讨论胡子/ Rails的一个问题:HTTP ://stackoverflow.com/questions/7045656/mustache-render-on-the-server-rails-and-on-the-client-javascript –