我的gruntfile中有以下内容:
usemin: {
html: ['<%= yeoman.dist %>/**/*.html'],
css: ['<%= yeoman.dist %>/styles/**/*.css'],
js: ['<%= yeoman.dist %>/scripts/**/*.js'],
options: {
assetsDirs: ['<%= yeoman.dist %>','<%= yeoman.dist %>/styles/**/*'],
patterns: {
js: [
[/css:["']styles/?.*/(.*.css)['"]/g, 'revved css resolves']
]
}
}
}
这是我想要的,给定一个javascript文件引用一个revved css文件,它取代了发生。但这只是第一次。我需要这个全局工作(因此'/g'修饰语。有线索吗?
输入的文件大致如下:
foo:{includes:{css:"styles/something.css"}},bar:{includes:{css:"styles/something.css"}}
我最终得到的是(假设0123456是rev的哈希值):
foo:{includes:{css:"styles/0123456.something.css"}},bar:{includes:{css:"styles/something.css"}}
我要的是:
foo:{includes:{css:"styles/0123456.something.css"}},bar:{includes:{css:"styles/0123456.something.css"}}
谢谢。
我的正则表达式太贪婪了,我通过用/css:"styles/?[A-Za-z]*/+([A-Za-z0-9]+.css)"}/g
替换我的模式来修复这个问题,现在我又开始工作了