为什么rails需要JavaScript Runtime?

时间:2012-03-12 18:54:59

标签: ruby-on-rails ruby-on-rails-3

我在我的Ubuntu Linux Box&上安装了rails(v3)。安装失败抱怨缺少javascript运行时。我做了一些查找&事实证明,rails需要在其运行的平台上安装javascript运行时。

虽然Windows默认捆绑了jscript。我的Ubuntu盒没有js运行时&我通过安装node.js(V8)修复了这个问题。

AFAIK,js运行时需要执行javascript代码& rails只是一个嵌入了javascript的web框架。 Javascript文件仅在客户端计算机上运行。

所以, 为什么rails需要JavaScript Runtime?

2 个答案:

答案 0 :(得分:30)

查看Rails Asset Pipeline。它使用JavaScript(和CSS)文件很有趣。值得注意的是:

  1. 它将CoffeeScript转换为JavaScript
  2. 它将所有javascript文件合并为一个
  3. 它缩小了该文件
  4. JavaScript运行时为used for minification

答案 1 :(得分:1)

Railsguides说它与压缩有关:

  

您需要一个支持ExecJS的运行时才能使用uglifier。如果您使用的是Mac OS X或Windows,则在操作系统中安装了JavaScript运行时。有关所有受支持的JavaScript运行时的信息,请查看ExecJS文档。

http://guides.rubyonrails.org/asset_pipeline.html#javascript-compression

我以为我看过Rails实际上会检查你的应用中样式表和javascript的有效性,但也许只是SASS预处理。