以下代码返回allRows []的长度为3,因为其中有3个数组。我试图建立一个最终的数组allRows。
getRows() {
return this.element.all(by.css(".xyz")).getText();
}
getTotalRows() {
const allRows = [];
for (let i = 0; i < 3; i++) {
allRows.push(this.getRows());
this.scrollDown();
this.waitToLoad();
}
return allRows;
}
实际上,getRows()返回的是一个Promise数组。对我的代码进行以下更改已解决了该问题
getRows() {
return this.pinnedRows.getText();
}
getTotalRows() {
const defer = Promise.defer();
let allRows = [];
for (let i = 0; i < 3; i++) {
this.getRows().then((rows) => {
allRows = allRows.concat(rows);
this.scrollDown();
this.waitToLoad();
if (i === 2) {
defer.resolve(allRows);
}
});
}
return defer.promise;
}
最佳答案
推送添加一个索引,您想要的是concat()