我的代码如下所示
function main() {
casper.start();
status = "A";
while(true){
if(status == "C"){
casper.then(function(){
status = "stop"; // the value status is stop in second loop
});
}else{
casper.then(function(){
status = "C"; // modify status value in first loop
});
}
if(status == "stop"){
console.log("stop");
break; // the loop should break in second loop
}
console.log("run");
}
casper.run(function () {
this.exit();
});
}
和上面的输出应该是。
C
run
stop
但事实上该程序陷入无限循环。输出刚刚运行。 我如何做到casper.then可以在下一个语句后同步执行? 我这样做只是为了在状态机中使用casper。 casper.then需要修改全局变量的值。但是现在我被上面的问题困惑了。