我已经与yeoman生成了一个角度应用程序,现在尝试使用grunt + htmlmin缩小我的html文件。 htmlmin位看起来像这样:
htmlmin: {
dist: {
options: {
collapseWhitespace: true,
conservativeCollapse: true,
collapseBooleanAttributes: true,
removeCommentsFromCDATA: true
},
files: [{
expand: true,
cwd: '<%= yeoman.dist %>',
src: ['*.html'],
dest: '<%= yeoman.dist %>'
}]
}
},
当我运行此任务时,它会响应它已经缩小了2个文件,但我无法在dist文件夹中看到它们?根本没有创建视图文件夹?
答案 0 :(得分:1)
我不使用自耕农,但我确实使用Gruntjs。
假设这不是一个yeoman配置问题,你可以做类似于我的事情。这是要点...
首先,我创建了一个不会丑化,缩小或其他任何内容的开发过程......这有助于加快我的开发过程。
然后,当我准备发布时,我会通过发布过程运行它,包括uglify,concats,minify,imagemin等...
你真的只需要从构建(输出)目录中缩小html ...并且由于你正在发布你也可能只是使用htmlmin版本覆盖build目录中的HTML文件(实际上没有任何意义)有这两个版本的发布)。
这是我的任务......对于这种情况,我们假设您的输出目录名为“_build”。这实际上是一项非常简单和干净的任务。希望这会有所帮助...
htmlmin: {
site: {
options: {
removeComments: true,
collapseWhitespace: true,
removeEmptyAttributes: false,
removeCommentsFromCDATA: false,
removeRedundantAttributes: false,
collapseBooleanAttributes: false
},
expand: true,
src: './_build/**/*.html',
}
}
你不能htmlmin尚未存在的东西。你必须首先构建输出目录然后在这些文件上运行htmlmin ...我认为你的src将更像以下......
files: [{
expand: true,
src: '<%= yeoman.dist %>/**/*.html'
}]
如果这对您有用,请将我的答案投票并将其标记为正确答案。
答案 1 :(得分:1)
使用Yeoman,在&#39; htmlmin&#34;中更改您的grunt文件。和&#34;复制&#34;部分。这将允许缩小,多个子目录缩小。
更改此行:
src: ['*.html', 'views/{,*/}*.html'],
到此:
src: ['*.html', 'views/**/*.html'],
*请务必在&#39; htmlmin&#34;中更改它并相应地在&#34; copy&#34;同一个grunt文件的一部分。