由于某种原因,grunt-contrib-sass生成合并的.css
文件而不是多个.css
文件。但这只发生在我定义ext
选项时。
文件结构:
app/
assets/
stylesheets/
application.web.scss
application.mobile.scss
application.tablet.scss
public/
assets/
Gruntfile.js配置
sass: {
default: {
options: {
compass: false,
noCache: true,
style: 'expanded'
},
files: [{
expand: true,
src: 'application.**.scss',
dest: 'public/assets',
cwd: 'app/assets/stylesheets',
ext: '.css'
}]
}
}
以上配置会生成以下内容:
app/
assets/
stylesheets/
application.web.scss
application.mobile.scss
application.tablet.scss
public/
assets/
application.css
如果我完全删除ext
选项,则会生成:
app/
assets/
stylesheets/
application.web.scss
application.mobile.scss
application.tablet.scss
public/
assets/
application.web.scss
application.mobile.scss
application.tablet.scss
我想要它产生的是:
app/
assets/
stylesheets/
application.web.scss
application.mobile.scss
application.tablet.scss
public/
assets/
application.web.css
application.mobile.css
application.tablet.css
我知道我可能忽略了一件非常基本的事情,但我似乎无法解决这个问题,因为我对XD的生活有什么想法吗?
答案 0 :(得分:0)
显然问题是文件名包含多个点。这与扩展相混淆。为了解决这个问题,我应该使用extDot
属性来定义扩展开始的点。我在这里找到了这个答案https://github.com/gruntjs/grunt/pull/863#issuecomment-22015455,其中指出了http://gruntjs.com/configuring-tasks#building-the-files-object-dynamically