我正在为BrunchJS开发一个插件而我并不了解所有内容。
https://github.com/dlepaux/fingerprint-brunch
由github.com/mutewinter/digest-brunch
和github.com/jgallen23/grunt-hash
概念: 重命名输出文件名并将其写入带有密钥的清单(以获取真实文件名)。
例如:
在这个配置文件中,我想制作一个/js/master.js
文件。
此插件的目标是重命名此文件名,如下所示:master.[hash].js
接下来在清单中写下这个:{'/js/master.js' : '/js/master.[hash].js'}
我希望你能帮助我理解我该怎么做。
exports.config =
paths:
public: './../public'
compass: './config.rb'
watched: ['app']
files:
javascripts:
joinTo:
'/js/master.js': /^(bower_components[\/\\]bootstrap-sass-twbs|bower_components[\/\\]bootstrap-datepicker|app)/
#'/js/vendor/response.js': /^(bower_components[\/\\]responsejs)/
#'/js/vendor/head.min.js': /^(bower_components[\/\\]headjs)/
#'/js/vendor/jquery.min.js': /^(bower_components[\/\\]jquery)/
#'/js/vendor/media.match.min.js': /^(bower_components[\/\\]media-match)/
modules:
wrapper: false
definition: false
conventions:
# we don't want javascripts in asset folders to be copied like the one in
# the bootstrap assets folder
assets: /assets[\\/](?!javascripts)/
plugins:
cleancss:
keepSpecialComments: 0
removeEmpty: true
sass:
debug: 'comments' # or set to 'debug' for the FireSass-style output
fingerprint:
manifest: '../../assssssets.json'
targets: ['/js/master.js']
在这个配置文件的底部,你会看到fingerprint
,在这里你将设置你想要哈希的config.files中的文件,因为我想你不会把哈希放在什么地方!
我现在的问题是,我不知道如何重命名最终文件......那我该怎么做呢? - 通过重命名最终文件? - 通过复制master.js(生成)并重命名它?
我必须在onCompile函数中做所有这些吗?还是拆机(最后)?
我只有这个文档:github.com/brunch/brunch/blob/stable/docs/plugins.md
我很困惑..
谢谢
答案 0 :(得分:-2)
看一下插件digest-brunch
的方法:https://github.com/mutewinter/digest-brunch
它使用onCompile
和大量代码来涵盖所有边缘情况。
这应该可以解决问题。