在Sprockets编译任务中禁用文件摘要

时间:2012-12-03 09:54:43

标签: ruby rack sprockets

我没有使用Rails。

我正在使用sprockets内置的编译器任务 SprocketsTask 。可以找到来源here

我想禁用附加到每个文件的文件摘要。所以 application-e7aa01ce5sdf9e6sdfdssd8sdfds8bb.css 将成为 application.css

似乎没有我能找到的文档,而且我已经查看了很多源代码。我知道我可以在文件创建后删除摘要,但我想我会先看看是否有人有更好的想法。

提前致谢。

1 个答案:

答案 0 :(得分:2)

#Rakefile

require "sprockets"

assets = Sprockets::Environment.new
assets.append_path "app/assets/javascripts"

task :assets do
    assets["application.js"].write_to "output/assets"
end

$ rake assets

带过滤器的

#Rakefile

require "sprockets"

assets = Sprockets::Environment.new
assets.append_path "app/assets/javascripts"
LOOSE_APP_ASSETS = lambda do |path, filename|
 filename !~ %r~app/assets~  && !%w[.js .css].include?(File.extname(path))
end
precompile = [LOOSE_APP_ASSETS, /(?:\/|\\|\A)application\.(css|js)$/]

task :assets do
    assets.each_logical_path(*precompile).each {|path|
        assets[path].write_to "output/assets/#{path}"
    }
end