Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法使用带有承诺的For循环_Javascript_Selenium_Selenium Webdriver_Protractor - Fatal编程技术网

Javascript 无法使用带有承诺的For循环

Javascript 无法使用带有承诺的For循环,javascript,selenium,selenium-webdriver,protractor,Javascript,Selenium,Selenium Webdriver,Protractor,我需要做的是,我必须单击一些图像,然后文本在另一个元素中发生变化。 我使用的是带有承诺的For循环,因此我能够成功地逐个单击图像,但文本无法显示。 它显示最后一个文本5次。 请帮忙 element.all(by.xpath(".//*[@ng-repeat='num in facesGrid[$index]']")).then(function(faces){ for(var i=0;i<faces.length;i++) {

我需要做的是,我必须单击一些图像,然后文本在另一个元素中发生变化。 我使用的是带有承诺的For循环,因此我能够成功地逐个单击图像,但文本无法显示。 它显示最后一个文本5次。 请帮忙

element.all(by.xpath(".//*[@ng-repeat='num in facesGrid[$index]']")).then(function(faces){



        for(var i=0;i<faces.length;i++)
        {
            element(by.model('currentTestimonialIndex')).getText().then(function(Index){
            console.log(Index);
            });
            faces[i].click();



    }

        });
element.all(按.xpath(“./*[@ng repeat='num in facesGrid[$index]'])),然后(函数(faces){
for(var i=0;i使用for循环代替for循环,并通过以下方式查找“面”:


请注意,这仍然是一个猜测,因为您尚未向我们提供您正在处理的页面的源代码-什么是
CurrentEstimationalIndex
是一个谜。

alecxe答案应该有效,但是如果您仍然想使用for循环,那么从for循环调用一个函数,将
i
值传递给它oop应该在函数中。alecxe的答案是一个循环。每个函数都是通过定位器找到的所有元素循环的。嗨,alec,我尝试了代码,但现在使用它,点击函数本身现在不起作用。“我感觉我在服用精神复合维生素。”这是为了点击
element.all(by.exactRepeater("num in facesGrid")).each(function (face) {
    element(by.model('currentTestimonialIndex')).getText().then(function (text) {
        console.log(text);
    });

    face.click();
});