gpt4 book ai didi

javascript - 如何在 Protractor 中跳出 for 循环?

转载 作者:行者123 更新时间:2023-11-29 22:03:03 24 4
gpt4 key购买 nike

这是我的代码-

formElements[0].findElements(by.repeater(repeater)).then(function(items){
console.log(i, '>>>>>>>>>.No of items in the list --- '+items.length);
(function(items){
for(var x1=0; x1<itemsToBeSelected.length; x1++){
console.log(i, '>>>>>>.Looking for item --- '+itemsToBeSelected[x1]);
skip = false;
(function(items, x1){
for(var x2=0; x2<items.length; x2++){
(function(items, x2){
items[x2].getText().then(function(itemName){
console.log(i, '>>>>..Verifying '+itemsToBeSelected[x1]+' with '+itemName);
if(itemName == itemsToBeSelected[x1]){
console.log(i, '>>>>>.Selecting the item --- '+itemName);
items[x2].findElement(by.css('.regular-checkbox')).click();

}
});
}(items, x2));
}
}(items, x1));
}
}(items));
});

我想在满足条件 itemName == itemsToBeSelected[x1] 时跳出内部 for 循环。尝试使用 flag、return 语句,但无法跳出循环。

请在代码中提出更正建议。

最佳答案

 ptor.element.all(by.repeater(repeater)).then(function(products){
console.log(i, '>>>>>>>>>.Products length --- '+products.length);
async.each(products, verifyName, function(err){
console.log('>>>>>>>>>>>err value --- '+err);
expect(err).toBe(true);
if(err){
console.log(i, '>>>>>>>>.Element is present');
}else{
console.log(i, '>>>>>>>>.Element is not present');
}
});
function verifyName(product, callback){
console.log(i, '>>>>>>>>.Inside function verifyName');
product.getText().then(function(name){
console.log('>>>>>>>>>>Looking for product --- '+name);
if(name==entityName){
console.log(i, '>>>>>>>>Verified the name - '+name);
callback(true);
}
});
}
});

我们也可以在 async.each 模块的帮助下获得相同的结果。例如我发布了一个代码,我试图在其中找到一个值。

所以关于我的问题,我们可以在设置回调(true)之前点击或对元素执行任何操作。比如说在这里我们可以做 - product.click();

关于javascript - 如何在 Protractor 中跳出 for 循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22553987/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com