當執行grunt自定義任務我迭代循環,在循環內我調用一個grunt任務,同時調用我設置值使用當前循環值的任務,但是當循環執行頭文,它總是設置數組的最後一個值。任務正在執行的最後一個值只有在咕嚕自定義任務
var productionUrl = "http://www.abc.de";
var phantomPagesPath = {
"index": "/index.php",
"search": "/Suche?searchString=test",
"warenkorb": "/warenkorb",
"product": "/4-ecksofa",
"cms": "/content/25-service",
"category": "/bestellung",
"pageNotFound": "/404"
};
grunt.initConfig({`phantomas: {
prod: {
options: {
options: {
'timeout': 30
},
buildUi: true
}
}
}`});`
grunt.registerTask('fantomas', 'Custome Phantomas task', function() {
var done = this.async();
var pageUrl = '';
var location = '';
for (var page in phantomPagesPath) {
pageUrl = '';
location = '';
if (phantomPagesPath.hasOwnProperty(page)) {
pageUrl = productionUrl + phantomPagesPath[page];
location = './public/phantomas/' + page + "/";
console.log("process started for: " + pageUrl);
console.log("location: " + location);
grunt.config.set('phantomas.options.url', pageUrl);
grunt.config.set('phantomas.options.indexPath', location);
grunt.task.run('phantomas');
}
}
done();
});
現在輸出我得到
過程開始了:http://www.abc.de/index.php 位置:./public/phantomas/index/
過程開始了:http://www.abc.de/Suche?searchString=test 位置:./public/phantomas/搜索/
流程開始:http://www.abc.de/warenkorb 位置:./public/phantomas/warenkorb/
個過程開始了:http://www.abc.de/4-ecksofa 位置:./public/phantomas/product/
過程開始了:http://www.abc.de/content/25-service 位置:./public/phantomas/cms/
過程開始了:http://www.abc.de/bestellung 位置:./public/phantomas/category/
過程開始了:http://www.abc.de/404 位置:./public/phantomas/pageNotFound/
運行「phantomas:prod」(phantomas)任務 PHANTOMAS執行(S)開始。
任務越來越全部數量的條目執行,但任務發送的數據是從環「pageNotFound」中的最後一項,
我的意思是這個過程是工作7倍,但在每一個過程,它正在最後循環的值。