2016-09-22 6 views
1

私は、新しいタスクの使用NPMモジュールをしたいと思いますが、私は何の結果きません:私はgrunt doneを実行すると、私は、ちょうどにconsole.logを見ていないよ使用NPMモジュールregisterTask

grunt.registerTask('done', function() { 

    var prepend = require('prepend'); 

    var file = 'app.bundleES6.js', 
     string = '// My string'; 

    prepend(file, string, function(error) { 
     if (error) 
     console.error(error.message); 
     else 
     console.log('Yeah'); 
    }); 

    }); 

を:

Running "done" task 

Done, without errors. 

グランタレジスタタスクでnpmモジュールを使用する方法は知っていますか?

ありがとうございました!

答えて

0

あなたのタスクの問題は、非同期であることです。

完了コールバックを取得するには、this.async()に電話する必要があります。タスクが完了すると、タスクが失敗した場合はfalseを渡してコールバックを呼び出す必要があります。このよう

grunt.registerTask('done', function() { 

    var callback = this.async(); 
    var prepend = require('prepend'); 

    var file = 'app.bundleES6.js', 
     string = '// My string'; 

    prepend(file, string, function(error) { 
    if (error) { 
     console.error(error.message); 
     callback(false); 
    } 
    else { 
     console.log('Yeah'); 
     callback(); 
    } 
    }); 
}); 
+0

ありがとうございました!完璧に働く –

関連する問題