7

grunt-contrib-lessgrunt-contrib-watchでgrunt-notifyをセットアップしようとしています。通常、これはうまく機能していますが、grunt-less が正常に実行されたときに通知する grunt-notify を取得できません。

これを設定またはデバッグする方法について誰かが洞察を持っている場合は、喜んで情報を提供してください。


完全な情報:

私は grunt-notify をセットアップして、ウォッチを使用して実行された回数が少ないときにトリガーするようにしました。これは、より少ないタスクが失敗したときにうまく機能します。素晴らしいポップアップエラーが表示されます:

画像

参考までに、これはコンソール出力です。

画像

less が成功すると、通知が届きません。通知を受け取りたいのですが、これを有効にする方法がわかりません。

これは、less が成功した場合のコンソール出力です。

画像

これは私が使用している 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 に関する元の質問

4

2 に答える 2

9

タスクのメッセージを gruntfile に追加し、そのメッセージを送信するタスクを指定する必要があります。下記参照

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

参考までに、 git repo readmeでそれらの使用を確認できます。

完全を期すために追加:

uKolka が以下で述べているように、彼のソリューションに従って監視タスクを更新する必要もあります。

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

notifiynotify:lessオブジェクト内の less タスクを参照する場所。

于 2014-09-25T15:19:45.853 に答える
8

なお、通知タスクの指定は...

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前述のものを参照しています。

于 2014-10-19T23:16:05.937 に答える