Транспортир: подождите, пока элемент станет невидимым/скрытым
Я видел еще одну ссылку, связанную с транспортиром, о том, как ждать, пока элемент станет видимым. Однако в последнее время я столкнулся с противоположным случаем. Я хотел подождать элемента, пока он не станет невидимым. Поскольку я не мог найти ничего конкретного. Я пошел вперед и придумал решение.
var ptor = protractor.getInstance();
ptor.wait(function() {
return element(by.css('#my-css-here')).isDisplayed().then(function(isVisible){
console.log('is visible :' + isVisible);
return !isVisible;
});
}, 12000).then(function(){
//do whatever you want
});
надеюсь, это помогает. любое предложение приветствуется.
Спасибо,
Ответы
Ответ 1
Использование elementexplorer (https://github.com/angular/protractor/blob/master/docs/debugging.md) Я посмотрел на объект транспортира и нашел ответ, который отлично работает для меня:
var el = element(by.id('visibleElementId'));
browser.driver.wait(protractor.until.elementIsNotVisible(el));
Ответ 2
Из @Machtyn
Это должен быть правильный ответ:
var EC=protractor.ExpectedConditions; browser.wait(EC.not(EC.presenceOf(el)), someTimeoutInMilli);