刚刚在我的一个项目中遇到了同样的问题,由于错误的文件定位器导致的警告正在停止 grunt 构建,并且由于 usemin 任务是最后一个运行的,我的脚本被完美地连接和缩小,但我的 html 中的引用没有更新。
如果您有像我一样的错误,请尝试修复它或运行grunt build --force 以通过它。
如果不是,请检查您的脚本是否被构建标签正确包围
<!-- build:js({.tmp,app}) scripts/vendor.js -->
...
<!-- endbuild -->
并且您已正确配置您的 rev、useminPrepare 和 usemin 任务
小例子:
rev: {
dist: {
files: {
src: [
'<%= yeoman.dist %>/public/scripts/{,*/}*.js',
'<%= yeoman.dist %>/public/styles/{,*/}*.css'
]
}
}
},
useminPrepare: {
html: '<%= yeoman.app %>/views/index.html',
options: {
dest: '<%= yeoman.dist %>/public'
}
},
usemin: {
html: '<%= yeoman.dist %>/views/{,*/}*.html',,
css: ['<%= yeoman.dist %>/public/styles/{,*/}*.css'],
options: {
assetsDirs: ['<%= yeoman.dist %>/public']
}
},
还要确保您的 build 任务正在引用它们:
grunt.registerTask('build', [
'clean:dist',
'bower-install',
'useminPrepare',
'concurrent:dist',
'autoprefixer',
'concat',
'ngmin',
'copy:dist',
'cdnify',
'cssmin',
'uglify',
'rev',
'usemin'
]);