- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
情况
我使用了一个带有自己的 JavaScript 和样式表 Assets 的 gem。这个 gem 使用标准的 application.js 和 application.css list 来要求它的所有 Assets :
[gem]/app/assets/javascripts/gem_name/application.js
require_tree .
[gem]/app/assets/javascripts/gem_name/backoffice/menu.js
… some JavaScript code …
[gem]/app/assets/javascripts/gem_name/backoffice/forms.js
… some JavaScript code …
[my_app]/app/assets
中来覆盖它们。文件夹,例如:
[my_app]/app/assets/javascripts/gem_name/backoffice/menu.js
[my_app]/app/assets
中的文件覆盖
[gem]/app/assets
中的文件.
rake assets:precompile
预编译 Assets 时,覆盖文件 menu.js
不会替换 gem 中的原始文件 .已编译
application.js
包含来自原始
menu.js
的代码.
require_tree
仅在当前文件的目录中查找文件,而不查找多个加载路径(例如 app/assets 或 vendor/assets)。所以如果当前文件是
[gem]/app/assets/javascripts/gem_name/application.js
,
Sprockets#require_tree
只会查看
[gem]/app/assets/javascripts/gem_name/
用于更多文件,不会使用其他加载路径,如
[my_app]/app/assets/…
.
menu_patched.js
覆盖原始文件中定义的对象和方法并将其放置,以便在调用原始对象和方法之前应用其定义(猴子修补 JavaScript 风格)。但我在这里寻找更清洁的解决方案。
最佳答案
在您发布于 on GitHub 的演示代码中,你的 application.js 有:
//= require any_gem
any_gem.js
,这是 Gem 的 list 文件,它引入了 Gem 的所有 JS 文件。如果您不想要所有文件,那么您需要通过明确列出它们来更改它以仅引入您想要的文件:
//= require ../../../vendor/assets/javascripts/any_gem/do_not_override.js
//= require_tree .
关于ruby-on-rails - 如何为 Assets :precompile? 覆盖 gem Assets 中的单个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16435428/
这两个任务有什么区别? 最佳答案 # from assets.rake desc "Compile all the assets named in config.assets.precompile"
我必须创建一个 file.h 并将其放入我的 includes/目录。到了 GCC 的时候我遇到了一个问题: 我得到的错误是: error: invalid value 'precompiled-he
我们使用 Rails 3 作为我们的应用程序。使用 rake assets:precompile:all 编译 Assets 需要相当长的时间,但是使用 rake assets:precompile:
这两个任务有什么区别,为什么我需要在 cap deploy 时添加 RAILS_ENV=production? 谢谢! 最佳答案 您需要指定 RAILS_ENV=production 环境变量,以便在
在 Rails 中,如何通过 rake assets:precompile 输出为 Assets 管道编译的 Assets 列表? 最佳答案 这是 2 年后的事了,但我刚刚发现这个问题又问了一次并想通
我阅读了 MSDN 中的文档,但最后我并不清楚它们之间的实际区别是什么。两者似乎都需要在每个 *.cpp 文件的顶部添加 stdafx.h。 我正在使用 VS2008。 谁能帮忙解决问题? 最佳答案
预编译头到底是什么?它们什么时候使用? 最佳答案 预编译头是编译过程中使用的优化。 基本上,如果你编译类似 stdio.h 的东西使用完全相同的定义和环境,您可以放心地假设每次结果都相同。 因此,编译
根据 GAE 文档,您可以通过以下方式禁用预编译: false 但是文档中没有任何地方说明这样做的优点/缺点/注意事项是什么。任何经验丰富的 GAE 专家都可以权衡启用与禁用此功能时 GAE 应用程序
C:\Sites\dtr-payroll>rake assets:precompile rake aborted! You have already activated rake 10.0.4, bu
背景 我正在使用 StackExchange.Precompilation 在 C# 中实现面向方面的编程。 See my repository on GitHub. 基本思想是客户端代码将能够在成员
好的,当我尝试使用 Assets 管道时出现此错误。我不明白是什么原因造成的。 Sprockets::Helpers::RailsHelper::AssetPaths::AssetNotPrecomp
我在生产服务器上收到该错误,无法弄清原因。运行以下命令时会发生这种情况: bundle exec rake assets:precompile RAILS_ENV=production 我正在使用Ra
如果我们用Python编写一个函数,其执行依赖于已知的外部变量,Python每次仍然会检查它 我是说 def fun(): return 1 if False else 5 每次调用此函数时都
我在名为utypes.h的头文件中有一些有用的typedef。从那时起,我决定使用make,并且没有找到编译它的方法。 当我执行gcc -Wall -c utypes.h生成utypes的.o对象时,
我使用 luac 来编译我的 lua 代码。luac版本是5.2.2,我的应用原生lua是5.2.2。 我的lua代码 function hello() print("hello test l
所以我的代码运行良好(我使用的是 gulp 而不是 grunt 重要的是): var handlebars = require('handlebars'), rename = require(
我正在使用 StackExchange.Precompilation 在构建时执行一些 C# 语法转换。我希望能够在构建期间从我的 ICompileModule 中抛出异常,并将这些输出到 Visua
我正在尝试发布我的网络应用。 这是我的发布配置文件设置的图片: 如您所见,我选中了“发布期间预编译”选项。 这里是“Precompile during publish”的配置设置。 选中此选项并尝试发
我在我的 Rails 应用程序中使用 bootstrap-sass 和 twitter-bootstrap-rails。在我预编译我的 Assets 后,所有的按钮都变成了二维/平面,标签文本变成了粗
我尝试使用 在生产中预编译 Assets rake assets:precompile --trace RAILS_ENV=production 它说有像这样的语法错误 Sass::SyntaxErr
我是一名优秀的程序员,十分优秀!