2015-06-27 14 views

cevap

1

Bunu diğer güne ayarlamayı başardım, böylece olası bir çözümü göndereceğim. Ne olursa olsun dinamik (görevler arasında veri paylaşmak için) yapılandırma nesnesi değiştirmek için grunt.config veya <%= ... %> çiftleşmiş kullanmaya çalışıyorsanız olsun

, sizin sorun olabilir watch varsayılan olarak tetiklenen görevler için spawns child processes, yapım eslint o farklı bir bağlamda koş.

, bu sorunu gidermek için watch yapılandırırken spawn:false seçenek işaretini kullanın. changedFiles ayarı,

watch: { 
    scripts: { 
    files: ['**/*.js'], 
    tasks: ['eslint'], 
    options: { 
     spawn: false, // !!! 
    }, 
    }, 
}, 
eslint: { 
    target: '<%= changedFiles %>' 
} 

Ardından izle olayına bir olay işleyicisi ekleyin:

Temelde, gibi görevlerinizi yapılandırmak

grunt.event.on('watch', function(action, filepath){ 
    grunt.config('changedFiles', filepath); 
} 

Ayrıca olay işleyicisi doğrudan eslint.target değiştirebilir Ancak, değiştirilen dosyaları taşıyan bir özniteliğe sahip olmak, bunları kullanabilecek herhangi bir görev için kullanılabilir hale getirir.