Protractor 异步函数如何在循环中等待

Protractor 异步函数如何在循环中等待,protractor,Protractor,我正在使用量角器黄瓜框架和量角器5.2.2。我有一个要求,即在任何帐户的每个位置发布一些内容,不同的帐户具有不同的位置数。我从DB获得此位置值(我必须按其名称单击此位置)。为此,我使用了以下代码 request.query('SELECT * FROM Locations WHERE ID =1', function (loc) { var loc_count=loc.length ; var i; for (i=0; i&l

我正在使用量角器黄瓜框架和量角器5.2.2。我有一个要求,即在任何帐户的每个位置发布一些内容,不同的帐户具有不同的位置数。我从DB获得此位置值(我必须按其名称单击此位置)。为此,我使用了以下代码

request.query('SELECT * FROM Locations WHERE ID =1', function (loc) {               
    var loc_count=loc.length ;
      var i;    
      for (i=0; i<loc_count; i++){           
          element(by.cssContainingText("span", loc[i].Location_name)).click();
          browser.sleep(4000);
          element(by.css('.post')).sendKeys("test"); 
          element(by.css('.submit')).click();;                               
      } 
});
request.query('从ID=1的位置选择*,函数(loc){
var loc_计数=loc.长度;
var i;

对于(i=0;i)您的循环甚至在单击第一个元素之前就结束了。您可以使用
loc.map(function(elem){…});
谢谢您的回复。但是loc.map(function(elem)也不起作用。click()/sendKeys()/sleep()即使在map函数中也没有等待。我想您需要>等待