如何在casperjs中创建同步调用

时间:2017-02-21 03:08:35

标签: javascript phantomjs casperjs

我的代码如下所示

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需要修改全局变量的值。但是现在我被上面的问题困惑了。

0 个答案:

没有答案