最近我和一位朋友开始了一个宠物项目,我们讨论了如何构建网站,是让服务器处理模板和数据操作,还是使用像ExtJS这样的JavaScript UI库/ Jquery UI动态呈现小部件,并将服务器用作允许数据流的服务。
什么更好?用于处理UI / Events的JavaScript和后端的所有内容只是数据服务或使用后端框架的传统MVC(最好是ruby)?
用于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/