Gruntjs 如何防止usemin覆盖原始index.html文件
我正在使用usemin,我通常喜欢它,但我真的不喜欢usemin覆盖了我原来的index.html文件。我的GrunFile中有一个非常典型的设置:Gruntjs 如何防止usemin覆盖原始index.html文件,gruntjs,grunt-usemin,Gruntjs,Grunt Usemin,我正在使用usemin,我通常喜欢它,但我真的不喜欢usemin覆盖了我原来的index.html文件。我的GrunFile中有一个非常典型的设置: useminPrepare: { html: '<%= yeoman.app %>/index.html', options: { root: '<%= yeoman.root %>', staging: '<%= yeoman.tmp %>', dest: '<%= yeo
useminPrepare: {
html: '<%= yeoman.app %>/index.html',
options: {
root: '<%= yeoman.root %>',
staging: '<%= yeoman.tmp %>',
dest: '<%= yeoman.dist %>',
flow: {
html: {
steps: {
js: ['concat', 'uglifyjs'],
css: ['cssmin']
},
post: {}
}
}
}
},
只是不要执行filerev任务。这是修改原始html文件的任务。您能在这里粘贴包含useminPrepare的grunt任务吗?对不起,我单击错误。file rev任务获取类似foo.bar的文件,并将其转换为foo.59bcc3ad.bar。这对原始文件没有影响。据我所知,我所面临的问题是,当与bower结合使用时,usemin任务将尝试在grunt构建期间“注入”bower组件。即使由于我的设置方式,文件最终并没有改变。但是,这会弄乱我对该文件的版本控制。@lostdorje哦,很抱歉回答错误。您说过在构建过程中“注入”bower组件的引用,正如我所知,这就是wiredep的功能。因此,请签出它的文档,以便正确使用。
staging: '<%= yeoman.tmp %>'
// Performs rewrites based on filerev and the useminPrepare configuration
usemin: {
html: ['<%= yeoman.dist %>/{,*/}*.html'],
css: ['<%= yeoman.dist %>/styles/{,*/}*.css'],
options: {
assetsDirs: ['<%= yeoman.dist %>','<%= yeoman.dist %>/images']
}
},
grunt.registerTask('build', [
'clean:dist',
'wiredep',
'useminPrepare',
'concurrent:dist',
'autoprefixer',
'concat',
'ngAnnotate',
'copy:dist',
'cdnify',
'cssmin',
'uglify',
'filerev',
'usemin',
'htmlmin',
'bridge:dist'
]);