grunt-contrib-sass 生成一个文件而不是多个文件



出于某种原因,grunt-contrib-sass会生成一个组合的.css文件,而不是多个.css文件。但这仅在我定义ext选项时发生。

文件结构:

app/ assets/ stylesheets/ application.web.scss application.mobile.scss application.tablet.scss public/ assets/

咕噜咕噜.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 所以对我做错了什么有什么想法吗?

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

相关内容

最新更新