我正在尝试选择https://www.angularjs.org/上的所有待办事项。然而它只改变了第一个。如何选择所有元素:
element.all(by.repeater('todo in todoList.todos')).then(function(rows) {
for (var i = 0; i < rows.length; ++i) {
element.all(by.repeater('todo in todoList.todos')).get(i).element(by.model('todo.done')).click();
}
});
答案 0 :(得分:2)
您需要.each()
:
var todos = element.all(by.repeater('todo in todoList.todos'));
todos.each(function(todo) {
todo.element(by.model('todo.done')).click();
browser.sleep(1000); // hardcoded delay
});
答案 1 :(得分:0)
var todos = element.all(by.repeater('todo in todoList.todos'));
todos.get(1).click();
todos.get(2).click();
element.all将收集给定定位器的所有元素,get()将选择元素特定元素。 它像数组一样工作。