作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
类似于(在初始化程序中):
Sprockets.before_precompile do
# some custom stuff that preps or autogenerates some asset files
# that should then be considered in the asset pipeline as if they were checked in
end
最佳答案
正如我从源代码中看到的,Sprockets 没有这样的钩子(Hook),但你可以使用 rake 任务钩子(Hook)。例如,您将创建一个启动所有预处理器、gulp 等的 rake 任务,因此该任务可以放在预编译之前。
# lib/tasks/before_assets_precompile.rake
task :before_assets_precompile do
# run a command which starts your packaging
system('gulp production')
end
# every time you execute 'rake assets:precompile'
# run 'before_assets_precompile' first
Rake::Task['assets:precompile'].enhance ['before_assets_precompile']
rake assets:precompile
,因此任务
before_assets_precompile
将在它之前执行。
system
而不是
exec
, 因为
exec
将在运行此预任务的阶段退出进程并且不会运行
assets:precompile
正如预期的那样。
关于ruby-on-rails - 如何在 Rails 中的任何 Assets 预编译之前运行自定义代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27761643/
我是一名优秀的程序员,十分优秀!