3
我試圖在grunt中運行一個任務,它轉到一個URL並將響應保存在一個文件中,但我希望它轉到不同的URL並相應地創建不同的文件。 因此,我正在運行一個循環,並在每次迭代中更改config中的數據。 但是任務運行會追加到循環結尾,因此當循環完成後,更改config中的所有值時,它會使用config中最新更改的值運行任務30次,最後只會一次又一次創建1次文件30次。 這裏是我的代碼 如何在for循環中運行grunt任務,同時動態更改config中的數據?
module.exports = function(grunt){
\t grunt.initConfig({
\t \t id:0,
\t \t http:{
\t \t \t devel:{
\t \t \t options: {
\t \t \t url: 'http://127.0.0.1:8000/foo/<%= id %>/'
\t \t \t },
\t \t \t dest: 'www/foos/foo<%= id %>.json'
\t \t \t }
\t \t }
\t });
\t grunt.loadNpmTasks('grunt-http');
\t grunt.registerTask("default", function(){
for (var i = 30; i > 1; i--) {
grunt.config.set("id", i);
var d = grunt.config.get("id");
grunt.log.writeln("id = "+d);
grunt.task.run("http");
}
});
};
也許這個鏈接會有所幫助:http://stackoverflow.com/a/37716046/3397771 – 76484
這是沒有幫助的,因爲我想通過一些參數的任務本身,在一定意義上。 (要傳遞的參數將是循環的迭代索引) –