0
使用eachThen API網址我試圖利用在casperJS新的1.1 eachThen()API的但是我發現它的一些奇怪的行爲的列表。不能動態地設置CasperJS
下面遵循一個簡單的應用程序
var casper = require('casper').create({
verbose: true,
logLevel: "error"
});
var urls = ['http://google.com/'];
casper.start();
var testvar = "";
casper.then(function() {
urls = ['http://yahoo.com/', 'http://www.youtube.com/'];
});
casper.eachThen(urls, function(response) {
console.log("Opening: "+response.data);
this.thenOpen(response.data, function(response) {
testvar = response.url;
});
});
casper.run();
我的理解是,這個應用程序應該打開yahoo.com其次youtube.com但是似乎在一步數組賦值之前不考慮所要採取的方式而且輸出將是「開放:http://google.com/」。
是誰在做這個知道任何限制或者這可能在casperJS的電流(測試)版中的錯誤。我正在使用最新的1.1.0-DEV
你能嘗試包裝內則()語句的eachThen?我知道這看起來很愚蠢,但是每一個都異步運行這個函數,但是URL不會被這樣讀取。 – hexid
如果你這樣做,它工作,但我很好奇,爲什麼我需要添加包裹在看到每個eachThen迭代本身是一個一步步整個事情。 – ByteFlinger