Я использовал yoman для создания углового проекта. Когда я создаю, файл app.js создается в папке dist, но имя файла - app.js, но это app.2bf032ifs.js. Я не знаю почему?
Ниже, как я написал свою углификацию -
uglify: {
build: {
src: '<%= yeoman.app %>/scripts/**/*.js',
dest: '<%= yeoman.dist %>/scripts/app.js'
}
},
Во время выполнения команды Grunt я получаю сообщение
Running "ngtemplates:dist" (ngtemplates) task
File .tmp/templateCache.js created.
>> Usemin has not created uglify.generated yet!
1) Я не знаю, как получить правильное имя файла в папке dist, как? 2) Как избавиться от вышеуказанного сообщения? 3) Filename, аналогичное поведение при создании окончательного файла css.
Примечание. Ниже приведена моя задача.
usemin: {
html: ['<%= yeoman.dist %>/{,*/}*.html'],
css: ['<%= yeoman.dist %>/styles/{,*/}*.css'],
js: ['<%= yeoman.dist %>/scripts/{,*/}*.js'],
options: {
assetsDirs: [
'<%= yeoman.dist %>',
'<%= yeoman.dist %>/images',
'<%= yeoman.dist %>/styles'
],
patterns: {
js: [[/(images\/[^''""]*\.(png|jpg|jpeg|gif|webp|svg))/g, 'Replacing references to images']]
}
}
},
Это происходит из-за задачи с именем "filerev", эта стратегия используется, чтобы сообщить браузеру загружать новую копию файла каждый раз, чтобы его не кэшировать. Если вы не хотите, чтобы это произошло, прокомментируйте задачу "filerev".
Что-то вроде:
grunt.registerTask('build', [
'clean:dist',
'wiredep',
'useminPrepare',
'concurrent:dist',
'postcss',
'ngtemplates',
'concat',
'ngAnnotate',
'copy:dist',
'cdnify',
'cssmin',
'uglify',
//'filerev',
'usemin',
'htmlmin'
]);