如何通过量角器过滤器返回元素的索引(函数(elem,index){)}

时间:2019-05-02 17:06:57

标签: protractor

d.level

如果文本匹配,我想返回该元素的索引,然后使用该索引查找另一个元素,该怎么做?

1 个答案:

答案 0 :(得分:0)

filter()用于过滤出符合条件的项目。它返回原始数组的部分/所有项目,如果没有项目满足条件,则返回空数组。

因此filter()的返回值中的项目只能是原始数组的相同类型。这就是为什么您无法获取索引的原因。您只能获取Web元素。

有几种方法可以解决您的问题。

WSManager.ListedWSLabel.getText().then((txts)=>{
    return txts.findIndex((it)=>{
        return it.toUpperCase() === WSName.toUpperCase()
    });
});

// using map()
WSManager.ListedWSLabel.getText().map((ele)=>{
    return ele.getText();
})
.then((txts)=>{
    return txts.findIndex((it)=>{
        return it.toUpperCase() === WSName.toUpperCase()
    });
});