我以前在RoR项目中使用过RJS,感觉它的功能受到了很大的限制。然而,仅使用Javascript感觉不够优雅和专业。特别是当编写Javascript来操作Rails自动生成的变量名时,这种感觉尤为明显。最近博客圈似乎没有太多关于RJS的讨论。RJS在新的RoR项目中是否被使用,或者人们已经认为它不够有效?它是否仍在积极开发中并扩展其功能覆盖范围?我希望能对当前情况有一些了解。
那么,谁在使用RJS(它对你的工作效果如何),谁在使用Javascript?
我以前在RoR项目中使用过RJS,感觉它的功能受到了很大的限制。然而,仅使用Javascript感觉不够优雅和专业。特别是当编写Javascript来操作Rails自动生成的变量名时,这种感觉尤为明显。最近博客圈似乎没有太多关于RJS的讨论。RJS在新的RoR项目中是否被使用,或者人们已经认为它不够有效?它是否仍在积极开发中并扩展其功能覆盖范围?我希望能对当前情况有一些了解。
那么,谁在使用RJS(它对你的工作效果如何),谁在使用Javascript?
我喜欢使用RJS处理简单的任务,比如:
page["post_#{@post.id}"].replace :partial => @post
page["post_#{@post.id}"].highlight
我建议直接编写JavaScript。我认为,是的,RJS已经过时了。其中一个原因是流行的jQuery库。另一个原因是RJS的模型 - 它是javascript的ruby包装器,因此对于任何需要使用的javascript库,您都需要一个相应的ruby包装器库,这意味着有人需要做更多的工作(还有另一个你将依赖的gem)。此外,尽管发出请求并收到可执行的javascript的想法很好,但我认为有许多人不喜欢这种风格,或者至少认为它不适用于某些情况。我个人已经学习了JavaScript,并且非常喜欢它,我建议您也尝试一下。
RJS从来没有被设计成JavaScript的完全替代品,你不应该根据博客圈里其他人在做什么来决定哪种工具适合你的工作。
个人而言,我不喜欢由助手生成的js,所以通常选择不使用它们。然而,在某些情况下,它们非常方便。
此外,如果你不是Prototype的粉丝,还有一个Jquery替代品Jrails。
但是,我必须同意NSD的观点。为什么要让别人的做法最终引导你的道路呢?如果你不喜欢助手的工作方式或者它们不能满足你的项目需求,那就不要使用它们。或者如果它缺少某些功能,那就自己编写。也许在这个过程中,你可以激发一些兴趣。
至于“投资时间”,这是知识。