如果我想将现有项目从 Javascript 移植到 Coffeescript(在我的情况下,在 Rails 应用程序中),我需要转换现有的 Javascript 文件吗?我担心转换非常大的 CDN 托管文件,如 jQuery 和 jQueryUI。我将如何解决这个问题?
2 回答
正如@asawyer 所说,您不需要将现有的 JavaScript 库等移植到 CoffeeScript。
CoffeeScript 的存在是为了方便您编写自己的自定义代码。因为 CoffeeScript 编译成 JavaScript,所以它可以很好地与其他 JavaScript 库(如 jQuery)配合使用,而无需将这些库转换为 CoffeeScript。
如果您有自己的代码想要转换成 CoffeeScript,我发现js2coffee.org非常有帮助。它还可以作为“用 JavaScript 思考”并了解如何在 CoffeeScript 中完成的一个很好的学习工具。
在 Rails 中,coffeescript 是通过编译器运行到 javascript 中的。如果需要,您可以包含纯 javascript 文件 (.js),或者编译成 js 的咖啡脚本 (.js.coffee)。如果您只是想包含遗留文件,则根本不需要进行任何转换——转换为 coffeescript 可能没有意义,只是让 rails 编译器在资产管道中转换回 javascript...见http://guides.rubyonrails.org/asset_pipeline.html#coding-links-to-assets了解 Rails 团队关于如何在资产管道中使用 js 的更多信息。
jQuery 已经包含在较新版本的 Rails(3.1 及更高版本)中,因此这应该不是问题。 http://weblog.rubyonrails.org/2011/4/21/jquery-new-default/
此外,许多其他 jQuery 插件都有一个可以简单地包括在内的宝石——无需在那里重新发明轮子。