Wind.js 初学者问题 - 在循环里面用$await
发布于 6 年前 作者 atian25 6041 次浏览 最后一次编辑是 2 年前

报错是

E:\Workspace\TZ\LTE-Test\client>node-dev client.js
Starting ping http://www.baidu.com...
exec error: ReferenceError: $await is not defined

代码:

var Wind = require("wind");
Wind.logger.level = Wind.Logging.Level.INFO;

var pingAsync = Wind.Async.Binding.fromStandard(require('./lib/ping'),'data');
var worker = eval(Wind.compile("async", function(job){
  var data
  while(true){
    try {
      job.pingCfg.job.forEach(function(item){
        console.log('Starting ping %s...',item.url);
        result = $await(pingAsync(item.url));
        console.log('ping result: %j',result.data);
      })
    } catch(e){
      console.log('exec error: ' + e);
    }
    $await(Wind.Async.sleep(job.jobInterval*60*1000));
  }
}))
worker(jobObj).start()
5 回复

放到for(var i=0;i<10;i++) 里面就可以, 是作用域问题吗?

按照老赵的说法是“所有的$await只能“直接”用于被compile的function里面。”。。。

只能用在evl里面

上次我搞了一个下午才知道 老赵在某一篇的评论里有提到

回到顶部