繁体   English   中英

Ruby on Rails - 如何在application.js中执行require

[英]Ruby on Rails - how require is executed in application.js

我正在读一本关于“Ruby on Rails”的书。 在“application.js”中,我们以下列方式包含其他JavaScript库,更具体--jQuery UI:

//= require jquery
//= require jquery_ujs
//= require jquery-ui

因为这是普通的JavaScript文件(不是ruby扩展,例如“html.erb”,例如exmaple)应用程序如何知道执行require命令? 这是什么样的JavaScript语法:

//= 

因为这是普通的JavaScript文件,为什么我们不使用“脚本”标签来包含JavaScript文件?

另外,我在这里读到“require”方法将在$ LOAD_PATH变量文件夹中定义此库。 我怎样才能看到“jquery-ui”的存储位置? 我问,因为在其他应用程序中,为了使用jQuery UI,我不仅要添加JavaScript文件,还要添加库使用的css文件和图像 - 在这种情况下,我们只使用单行进行此操作?

这是什么样的JavaScript语法。

//开头的任何内容都是Javascript评论。

它是如何处理的?

服务器端的链接扫描JS文件以获取directives //=是一个特殊的Sprocket指令。 遇到该指令时,它会要求指令处理器处理命令,在此示例中为require 在没有Sprockets的情况下, //= require ..行将是一个简单的JS注释。

红宝石require VS链轮require

这是两件完全不同的事情。 你链接的那个是Ruby的要求。

为什么不使用脚本标记来加载JS文件。

通常,您希望连接所有应用程序JS文件,然后将它们缩小为1个主JS文件,然后包含它。 我建议阅读YSlow最佳实践。

我还建议观看Asset Pipline上的Railscasts - http://railscasts.com/episodes/279-understanding-the-asset-pipeline

干杯!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM