Grunt Watch没有运行辅助任务

时间:2014-03-30 21:38:34

标签: gruntjs watch

我是grunt的新手,我正在尝试配置gruntfile来监视更改并运行正确的编译器(现在指南针,jst和jshint)

指南针,JST和JsHint都可以自己正常工作,但是当我试图从手表中调用它们时,它们不会激活。 gruntfile检测到更改但不执行任何操作。

module.exports = function (grunt) {


    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        compass: {
            dev: {
                files: {
                    "stylesheets/global.css": "sass/*.scss"
                }
            }
        },
        jst: {
            compile: {
                files: {
                    "javascript/compiled/templates.js": ["templates/*.html"]
                }
            } 
        },
        jshint: {
            files: ['gruntfile.js', 'javascript/**/*.js'],
            options: {
                // options here to override JSHint defaults
                globals: {
                    jQuery: true,
                    console: true,
                    module: true,
                    document: true
                }
            }
        },
        watch: {
            css: {
                files: 'sass/*.scss',
                task: ['compass']
            },
            templates: {
                files: 'templates/*.html',
                task: ['jst']
            },
            scripts: {
                files: ['javascript/**/*.js', 'gruntfile.js'],
                task: ['jshint']
            },
            options: {
                spawn: true
            }
        }
    });

    grunt.loadNpmTasks('grunt-contrib-jst');
    grunt.loadNpmTasks('grunt-contrib-jshint');
    grunt.loadNpmTasks('grunt-contrib-compass');
    grunt.loadNpmTasks('grunt-contrib-watch');

    grunt.registerTask('default', ['jst', 'compass', 'watch']);
};

我做错了什么?我已经在所有宝石及其依赖项上运行了gem install。

1 个答案:

答案 0 :(得分:4)

监视配置中的

tasks是复数。将task: ['compass']更改为tasks: ['compass']