grunt-notify: не срабатывает при успехе

Я пытаюсь настроить grunt-уведомить с помощью grunt-contrib-less- и grunt-contrib-watch. Как правило, это работает хорошо, но я не могу получить уведомление о grunt-notify, чтобы уведомить меня об успешном выполнении grunt-less.

Если у кого-то есть понимание того, как его настроить или отладить, с радостью предоставим какой-либо вклад.


Полная информация:

Я настроил grunt-notify для запуска всякий раз, когда с помощью часов запускается меньше. Это прекрасно работает, когда меньше задач не удается. Дает мне большую ошибку:

образ

Для справки это вывод консоли:

образ

Когда менее успешно, я не получаю никаких уведомлений. Я хотел бы получить уведомление, но не могу понять, как включить это.

Это вывод консоли, когда менее успешно:

образ

Это GruntFile, который я использую:

module.exports = function(grunt) {

    grunt.initConfig({

        less: {
            development: {
                options: {
                    compress: true
                },
                files: {
                    "FILE.css": "FILE2.less"
                }
            }
        },

        watch: {
            less: {
                files: '**/*.less',
                tasks: ['less', 'notify_hooks']
            }
        },


        notify_hooks: {
            options: {
                message: "MESSAGE"
            }

        }


    });

    grunt.loadNpmTasks('grunt-contrib-less');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-notify');

    grunt.registerTask("default", ['less']);

};

Оригинальный вопрос о Github

2 ответа

Решение

Вам нужно добавить сообщение для вашей задачи в файл grunt и указать, для какой задачи оно будет давать это сообщение. Увидеть ниже

notify: {
    less:{
        options:{
            title: "CSS Files built",
            message: "Less task complete"
        }
    }
}

Для справки вы можете увидеть их использование в readme git repo

Добавлено для полноты:

Как упоминалось ниже, uKolka также потребует обновления задачи наблюдения в соответствии с его решением:

watch: {
    less: {
        files: '**/*.less',
        tasks: ['less', 'notify:less']
    }
},

куда notify:less ссылается на меньшее задание в объекте уведомления.

Следует отметить, что указание задачи уведомления...

notify: {
    less:{
        options:{
            title: "CSS Files built"
            message: "Less task complete"
        }
    }
}

... это только часть сделки.

Он также должен быть зарегистрирован в задаче, для которой вы хотите, чтобы он был запущен.

Так что для работы оригинального кода OP

    watch: {
        less: {
            files: '**/*.less',
            tasks: ['less', 'notify_hooks']
        }
    },

следует изменить на

    watch: {
        less: {
            files: '**/*.less',
            tasks: ['less', 'notify:less']
        }
    },

Это ссылается на notify:less упомянутый ранее.

Другие вопросы по тегам