Was bedeutet "dann" in CasperJS wirklich?

Ich benutze CasperJS, um eine Reihe von Klicks, ausgefüllten Formularen, dem Parsen von Daten usw. über eine Website zu automatisieren.

Casper scheint in Form einer Liste von voreingestellten Schritten organisiert zu seinthen Anweisungen (siehe ihr Beispiel hier:http://casperjs.org/quickstart.html) aber es ist unklar, was die nächste Anweisung auslöst, die tatsächlich ausgeführt wird.

Zum Beispiel tutthen Warten Sie, bis alle ausstehenden Anforderungen abgeschlossen sind. TutinjectJS als ausstehende Anfrage zählen? Was passiert, wenn ich eine habe?then Anweisung verschachtelt - verkettet an das Ende einesopen Aussage?

casper.thenOpen('http://example.com/list', function(){
    casper.page.injectJs('/libs/jquery.js');
    casper.evaluate(function(){
        var id = jQuery("span:contains('"+itemName+"')").closest("tr").find("input:first").val();
        casper.open("http://example.com/show/"+id); //what if 'then' was added here?
    });
});

casper.then(function(){
    //parse the 'show' page
});

Ich suche nach einer technischen Erklärung, wie der Ablauf in CasperJS funktioniert. Mein spezielles Problem ist das meine letztethen Anweisung (oben) läuft vor meinemcasper.open Aussage & Ich weiß nicht warum.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage