Grunt任务使用参数对几个文件夹中的几个文件进行Sass

时间:2016-08-09 08:35:20

标签: javascript sass gruntjs task

我有一个带有不同设计项目的文件夹,每一个我可能都有要编译的scss文件。所以我做了一个Gruntfile来监视scss文件的所有这些文件夹,我想在它们的目录中编译它们。但它'实际上由于这个错误而无法正常工作:

Running "sassAll" task

Running "sass:animating-rocket" (sass) task
Verifying property sass.animating-rocket exists in config...ERROR
>> Unable to process task.
Warning: Required config property "sass.animating-rocket" missing. Use --force to continue.

Aborted due to warnings.

似乎没有在配置范围上定义变量...

My Gruntfile如下所示:

module.exports = function (grunt) {

    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

        sass: {
            dist: {
                options: {
                    style: 'compressed'
                },
                files: [{
                    src: ['<%= grunt.task.current.args[0] %>/*.scss'],
                    dest: '<%= grunt.task.current.args[0] %>',
                    ext: '.css'
                }]
            }
        },

        watch: {
            options: {
                livereload: true
            },

            css: {
                files: ['**/*.scss'],
                tasks: ['sassAll'],
                options: {
                    spawn: false
                }
            }
        }

    });

    grunt.loadNpmTasks('grunt-contrib-sass');
    grunt.loadNpmTasks('grunt-contrib-watch');

    grunt.registerTask('sassAll', function () {
        gruntUtils.sassTasks.forEach(function (param) {
            grunt.task.run('sass:' + param);
        });
    });

    var gruntUtils = {
        sassTasks: ['animating-rocket', 'hamburger-animation']
    };

    grunt.registerTask('default', ['sassAll', 'watch']);

};

0 个答案:

没有答案