我对rails及其资产管道知之甚少。我们遇到了一个奇怪的问题,首先是关于设置的问题,因为我不知道(正如我所说)其他信息可能是相关的。
Rails 3.2.14 我们正在使用haml 香草js而不是咖啡 sass而不是scss 一些js / css框架而不是gem ...
在localhost上一切都很好用,但出于某种原因,我们在部署后会有一些重复的js。但问题非常奇怪,因为在alpha上我们得到了具有许多串联的application.js。到目前为止,问题是如何在application.js上连接的一些js也被浏览器调用。
假设我们有application.js
...
// require somemodule
...
所以在alpha上我们在application.js中连接了somemodule,但是我们也在浏览器中找到了somemodule.js ...我们没有从application.js中调用somemodule,所以我们不明白为什么会这样。
任何线索都将受到赞赏。
更新:我标记了凉亭,因为后端告诉我,因为凉亭的资产没有被编译
答案 0 :(得分:0)
确保您只需要 您的清单文件,并且您的清单不会扩展到其组件文件中。检查生产中的config.assets.debug
是否设置为false
,开发中是true
。在开发过程中,您将拥有许多JavaScript <script>
标记,每个标记位于app/assets/javascripts
中。在生产中,您将拥有一个<script src="/assets/application-XXXXX.js">
脚本标记。
您可能遇到的问题是,如果您同时预编译了资产,和将config.assets.debug
设置为true
,您将拥有一份完整的副本通过<script src="/assets/application-XXXXX.js">
包含的脚本,然后是包含的每个组件脚本的副本。