我听到一堆铁路开发商说RJS是邪恶的.我从来没有使用过,因为我总是设法使用经典的
javascript或者jquery做我想要的,所以我没有注意.现在我正在进入一些遗留代码,并且有RJS在这个地方.
那么是真的吗?使用RJS有哪些缺点/优点?
解决方法
让我们来谈谈RJS在进入是否是邪恶之前.
RJS将相同级别的抽象应用于ActiveRecord为sql提供的高功能Javascript库.然而,对于JavaScript库的RJS覆盖范围与ActiveRecord的sql适配器覆盖范围完全相同.
Rails仅支持对Prototype / Script.aculo.us的RJS支持.但是,有可用或正在开发的插件来支持其他Javascript库.例如,JRails重写基于原型的帮助者来处理jQuery. mootools和Dojo也有类似的插件.
认为RJS是邪恶的人通常是生产原型代码不舒服的人,或者那些觉得可以用原始Javascript更容易实现的人.
RJS并不完美,就像ActiveRecord不完美一样,每次你经常需要下载编写原始的JavaScript或sql来完成工作.像ActiveRecord一样,使用高级选项可以获得更舒适的效果,而无需编写原始代码即可完成.
RJS的一个奇妙之处在于它们本质上是产生Javascript的观点.将RJS提取出来可以根据需要被包含在部分内容中,这是非常容易的,作为对控件的响应或作为页面中包含的自定义JavaScript功能的一部分.这使得代码更加干燥,可以进行更简单的维护.
个人我经常使用RJS.我发现它是一次触摸大量DOM元素的完美方式.它带来双重奖励,允许我创建AJAX丰富的网站,而不需要写多少Javascript.然后再次我讨厌写Javascript.