我有一个非常常见的问题,阅读了很多解决方案(stackoverflow 和 github 问题),但仍然没有发现这对我有用。
我要解决的问题:
- angularjs项目,所以我使用generator-angular (yeoman generator)
- SASS预处理器(实际上并没有)
- 需要使用相对图像链接(../../images/yeoman.png),因此它们在构建之前和之后都是正确的(../images/yeoman.1er4b3.png )
我为此创建了测试项目。测试使用:
grunt serve:build
只有解决方案对我有用,您可以在此提交中找到
cssmin: {
options: {
target: '.tmp/styles/any.css',
relativeTo: '.tmp/styles/'
}
}
但它有问题:如果编译(构建后)css文件位于dist/styles/subfolder/(index.html contains < !-- build:css({.tmp,app}) styles/views/views.css -- >),链接将被破坏。
这个问题与grunt-cotrib-cssmin -> clean-css有关。
注意: generator-angular 使用我在帮助中看到的最新解决方案创建 Gruntfile,但在我的情况下没有帮助
usemin: {
html: ['<%= yeoman.dist %>/{,*/}*.html'],
css: ['<%= yeoman.dist %>/styles/**/*.css'],
options: {
assetsDirs: ['<%= yeoman.dist %>','<%= yeoman.dist %>/images']
}
},
如果有人能让测试项目正常构建,我会很高兴。