0

出于某种原因,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 所以关于我做错了什么有什么想法吗?

4

1 回答 1

0

显然问题在于文件名包含多个点。这与扩展名混淆了。为了解决这个问题,我应该使用该extDot属性来定义扩展从哪个点开始。我在这里找到了这个答案https://github.com/gruntjs/grunt/pull/863#issuecomment-22015455它指向这里的实际文档http://gruntjs.com/configuring-tasks#building-the-files-object -动态地

于 2014-12-07T13:31:36.010 回答