Tôi có một bảng có 3 hàng dữ liệu và 3 nút xóa. Tôi muốn xóa tất cả các hàng dữ liệu và vì vậy tôi đang cố gắng viết một phương thức trong đối tượng trang của tôi để làm như vậy ... điều này sẽ là một snap nhưng tôi không thể làm cho nó hoạt động. Tôi đang cố gắng nó như thế này:Thước đo góc: cách bấm tất cả các nút xóa trong đối tượng trang
this.rows = element.all(by.repeater('row in rows'));
this.deleteAllFriends = function() {
this.rows.each(function(row) {
row.$('i.icon-trash').click();
})
};
Nhưng điều này ném một lỗi:
Error: Index out of bound. Trying to access index:2, but locator: by.repeater("row in rows") only has 1 elements
Vì vậy, rõ ràng, các thước đo chỉ số kỳ vọng tiếp theo là không còn ở đó, bởi vì nó đã bị xóa. Tôi làm cách nào để giải quyết vấn đề này?
này cũng không hoạt động và ném các lỗi tương tự:
this.deleteButtons = $$('i.icon-trash');
this.deleteAllFriends = function() {
this.deleteButtons.each(function(button) {
button.click();
});
};
này cũng không hoạt động ...
this.deleteAllFriends = function() {
while(this.deleteButton.isDisplayed()) {
this.deleteButton.click();
}
};
Trong hầu hết các trường hợp, khi bạn đang xóa "tất cả" của một cái gì đó là trong một mảng/danh sách, bạn muốn xóa lùi. Bằng cách này, chỉ mục không bị gián đoạn/thay đổi bởi lần xóa đầu tiên. Đây là một bình luận CHUNG. Tôi không biết thước đo góc, có thể có một cách dễ dàng hơn/sạch hơn để làm điều đó trong trường hợp này - đó là lý do tại sao tôi đăng một bình luận và không phải là một câu trả lời. – DragonYen