WebdriverIO 如何遍历不是实际 table 或列表的元素列表
WebdriverIO How to loop through a list of elements that is not an actual table or list
如何遍历看起来像这样的元素列表。
(在这种情况下,我只需要列表中元素的长度,但其他人可能会从有关遍历元素的更多信息中受益。)
这是我的代码:
class Facilities {
get facilityCards() { return $('//*[@class="card-columns"]'); }
getFacilityCardCount() {
const fcs = this.facilityCards;
return fcs.$$('div').length;
}
}
export default new Facilities();
我确实在代码的其他部分使用了实际的 table。在这种情况下,table 标记是我的主要 xpath,而 tr 标记是我搜索的内容。但是在这种情况下,我所要做的就是 div's
如果您想更清楚地了解,请告诉我。
非常感谢您的帮助 =)
如您所知,$$ api returns 是一个元素数组。您可以对此使用任何 js 数组方法并循环遍历所有元素。您可以对每个元素执行各种操作。下面是一个例子。
$('//*[@class="card-columns"]').$$('div').forEach(element => {
console.log(element.getText());
})
如何遍历看起来像这样的元素列表。
(在这种情况下,我只需要列表中元素的长度,但其他人可能会从有关遍历元素的更多信息中受益。)
这是我的代码:
class Facilities {
get facilityCards() { return $('//*[@class="card-columns"]'); }
getFacilityCardCount() {
const fcs = this.facilityCards;
return fcs.$$('div').length;
}
}
export default new Facilities();
我确实在代码的其他部分使用了实际的 table。在这种情况下,table 标记是我的主要 xpath,而 tr 标记是我搜索的内容。但是在这种情况下,我所要做的就是 div's
如果您想更清楚地了解,请告诉我。 非常感谢您的帮助 =)
如您所知,$$ api returns 是一个元素数组。您可以对此使用任何 js 数组方法并循环遍历所有元素。您可以对每个元素执行各种操作。下面是一个例子。
$('//*[@class="card-columns"]').$$('div').forEach(element => {
console.log(element.getText());
})