【问题标题】:grunt-sass multiple src/dest on same structuregrunt-sass 同一结构上的多个 src/dest
【发布时间】:2015-12-14 19:12:28
【问题描述】:

我正在开发一个多网站项目,其中所有网站共享相同的结构:

-sites
  -site1
    -css
      -scss
  -site2
    -css
      -scss

在我的 gruntfile.js 中,我的 sass 任务是这样写的:

    sass: {
        options: {
            sourceMap: true,
            outputStyle: 'compressed'
        },
        pippo: {
            files: {
                'sites/site1/css/main.css': 'sites/site1/css/sass/main.scss',
                'sites/site2/css/main.css': 'sites/site2/css/sass/main.scss',
            }
        }
    }

这样写可以吗?

        sass: {
        options: {
            sourceMap: true,
            outputStyle: 'compressed'
        },
        pippo: {
            files: {
                'sites/**/css/main.css': 'sites/**/css/sass/main.scss'
            }
        }
    }

我对其进行了测试,它在构建时添加了一个新的 ** 文件夹...有什么建议吗?

【问题讨论】:

    标签: sass gruntjs


    【解决方案1】:

    几个小时后,我在我添加的 grunt 文件的最顶部找到了一个可行的解决方案:

    module.exports = function(grunt) {
        var fs = require('fs');
        console.log("Inside the gruntfile");
    
        //create dynamic list of scss file paths
        var objDestSource = {
            'public/css/main.css': 'public/css/sass/main.scss'
        };
        fs.readdirSync('sites').forEach(function(folder){
            objDestSource['sites/'+folder+'/css/main.css'] = 'sites/'+folder+'/css/sass/main.scss';
        });
        console.log(objDestSource);
        // end scss function
    

    在执行 grunt sass 任务时,我刚刚更改为:

    sass: {
            options: {
                sourceMap: true,
                outputStyle: 'compressed'
            },
            taskName: {
                files: objDestSource
            }
        }
    

    和监视任务:

    watch: {
       sass: {
           files: [
               'public/css/sass/**/*.scss',
               'sites/**/css/sass/**/*.scss'
           ],
           tasks: ['sass'],
           options: {
               spawn: false
           }
       }
    }
    

    这样我可以添加一个新的子网站,而不必每次都编辑 gruntfile!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-19
      • 1970-01-01
      • 1970-01-01
      • 2011-01-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多